Commit 94722a5c4ed720e69c971e0f892496597322ee93
Merge branch 'ww' into 'main_dev'
chore(types): 修复类型错误 See merge request yunteng/thingskit-view!18
Showing
2 changed files
with
18 additions
and
8 deletions
... | ... | @@ -15,7 +15,12 @@ import { customRequest } from '@/api/external/customRequest' |
15 | 15 | const { HelpOutlineIcon, FlashIcon } = icon.ionicons5 |
16 | 16 | const { targetData } = useTargetData() |
17 | 17 | |
18 | -const requestModal = ref<InstanceType<typeof RequestModal>>() | |
18 | +interface ComponentExpose { | |
19 | + openModal: ((flag: boolean | undefined, type: RequestDataTypeEnum) => Promise<void>) | undefined | |
20 | +} | |
21 | + | |
22 | + | |
23 | +const requestModal = ref<ComponentExpose>() | |
19 | 24 | |
20 | 25 | const designStore = useDesignStore() |
21 | 26 | |
... | ... | @@ -61,7 +66,7 @@ const themeColor = computed(() => { |
61 | 66 | }) |
62 | 67 | |
63 | 68 | const handleClickPanel = () => { |
64 | - unref(requestModal)?.openModal(true, unref(selectedRequestType)) | |
69 | + unref(requestModal)?.openModal?.(true, unref(selectedRequestType)) | |
65 | 70 | } |
66 | 71 | |
67 | 72 | watchEffect(() => { | ... | ... |
... | ... | @@ -5,24 +5,28 @@ import { CreateComponentType } from '@/packages/index.d'; |
5 | 5 | import { CreateComponentGroupType } from '@/packages/index.d'; |
6 | 6 | import { RequestConfigType } from '@/store/modules/chartEditStore/chartEditStore.d'; |
7 | 7 | import { useChartEditStore } from '@/store/modules/chartEditStore/chartEditStore'; |
8 | -import { GlobalComponentConfig, NButton, NDivider, NModal, NSpace, NTag } from 'naive-ui'; | |
8 | +import { NButton, NDivider, NModal, NSpace, NTag } from 'naive-ui'; | |
9 | 9 | import { ref, unref, computed, nextTick } from 'vue'; |
10 | 10 | import { PublicInterfaceForm } from '../PublicInterfaceForm'; |
11 | 11 | import ComponentConfiguration from './ComponentConfiguration.vue'; |
12 | 12 | import GlobalPublicConfiguration from './GlobalPublicConfiguration.vue'; |
13 | 13 | import { createRequestModalContext } from './useRequestModalContext'; |
14 | 14 | |
15 | +interface ComponentExpose { | |
16 | + getConfigurationData: () => RequestConfigType | |
17 | + setConfigurationData: (request: RequestConfigType) => void | |
18 | + validate: () => Promise<boolean> | |
19 | +} | |
20 | + | |
15 | 21 | const requestDataType = ref<RequestDataTypeEnum>(RequestDataTypeEnum.AJAX) |
16 | 22 | |
17 | 23 | const showModal = ref(false) |
18 | 24 | |
19 | 25 | const chartEditStore = useChartEditStore() |
20 | 26 | |
21 | -const globalConfigurationEl = ref<Nullable<InstanceType<typeof GlobalPublicConfiguration>>>() | |
27 | +const componentConfigurationEl = ref<ComponentExpose>() | |
22 | 28 | |
23 | -const componentConfigurationEl = ref<Nullable<InstanceType<typeof ComponentConfiguration>>>() | |
24 | - | |
25 | -const publicInterfaceFormEl = ref<Nullable<InstanceType<typeof PublicInterfaceForm>>>() | |
29 | +const publicInterfaceFormEl = ref<ComponentExpose>() | |
26 | 30 | |
27 | 31 | const getRequestTypeName = computed(() => { |
28 | 32 | return RequestDataTypeNameEnum[RequestDataTypeEnum[unref(requestDataType)] as keyof typeof RequestDataTypeEnum] |
... | ... | @@ -34,6 +38,7 @@ const openModal = async (flag = true, type: RequestDataTypeEnum) => { |
34 | 38 | requestDataType.value = type |
35 | 39 | showModal.value = flag |
36 | 40 | await nextTick() |
41 | + | |
37 | 42 | unref(componentConfigurationEl)?.setConfigurationData(unref(selectTarget)!.request || {}) |
38 | 43 | unref(publicInterfaceFormEl)?.setConfigurationData(unref(selectTarget)!.request || {}) |
39 | 44 | } |
... | ... | @@ -92,7 +97,7 @@ defineExpose({ |
92 | 97 | |
93 | 98 | <template> |
94 | 99 | <NModal :class="prefixCls" v-model:show="showModal" preset="card" style="width: 1000px;" title="请求配置"> |
95 | - <GlobalPublicConfiguration v-if="requestDataType === RequestDataTypeEnum.AJAX" ref="globalConfigurationEl" /> | |
100 | + <GlobalPublicConfiguration v-if="requestDataType === RequestDataTypeEnum.AJAX" /> | |
96 | 101 | <NDivider v-if="requestDataType === RequestDataTypeEnum.AJAX" /> |
97 | 102 | <ComponentConfiguration v-if="requestDataType === RequestDataTypeEnum.AJAX" ref="componentConfigurationEl" /> |
98 | 103 | <PublicInterfaceForm v-if="requestDataType === RequestDataTypeEnum.Pond" ref="publicInterfaceFormEl" /> | ... | ... |