Showing
4 changed files
with
18 additions
and
17 deletions
| @@ -96,7 +96,7 @@ | @@ -96,7 +96,7 @@ | ||
| 96 | }; | 96 | }; |
| 97 | 97 | ||
| 98 | const set = (val: string, cursorPos?: number) => { | 98 | const set = (val: string, cursorPos?: number) => { |
| 99 | - return unref(editorInstance)?.setValue(val, cursorPos); | 99 | + return unref(editorInstance)?.setValue(unref(val), cursorPos); |
| 100 | }; | 100 | }; |
| 101 | 101 | ||
| 102 | function destroy() { | 102 | function destroy() { |
| @@ -12,13 +12,7 @@ | @@ -12,13 +12,7 @@ | ||
| 12 | import { isFunction, isString } from '/@/utils/is'; | 12 | import { isFunction, isString } from '/@/utils/is'; |
| 13 | import { ScriptLanguageEnum } from '/@/enums/scriptEnum'; | 13 | import { ScriptLanguageEnum } from '/@/enums/scriptEnum'; |
| 14 | import { ScriptTestParams } from '/@/api/ruleChainDesigner/model'; | 14 | import { ScriptTestParams } from '/@/api/ruleChainDesigner/model'; |
| 15 | - | ||
| 16 | - interface Value { | ||
| 17 | - msg: Recordable; | ||
| 18 | - metadata: Recordable; | ||
| 19 | - msgType: MessageTypesEnum; | ||
| 20 | - javascriptFunction: string; | ||
| 21 | - } | 15 | + import { TestModalValueType } from '.'; |
| 22 | 16 | ||
| 23 | const props = withDefaults( | 17 | const props = withDefaults( |
| 24 | defineProps<{ | 18 | defineProps<{ |
| @@ -45,8 +39,8 @@ | @@ -45,8 +39,8 @@ | ||
| 45 | 39 | ||
| 46 | const emit = defineEmits<{ | 40 | const emit = defineEmits<{ |
| 47 | (eventName: 'cancel'): void; | 41 | (eventName: 'cancel'): void; |
| 48 | - (eventName: 'test', value: Value): void; | ||
| 49 | - (eventName: 'save', value: Value): void; | 42 | + (eventName: 'test', value: TestModalValueType): void; |
| 43 | + (eventName: 'save', value: TestModalValueType): void; | ||
| 50 | }>(); | 44 | }>(); |
| 51 | 45 | ||
| 52 | const jsonEditor = ref<InstanceType<typeof JSONEditor>>(); | 46 | const jsonEditor = ref<InstanceType<typeof JSONEditor>>(); |
| @@ -85,7 +79,7 @@ | @@ -85,7 +79,7 @@ | ||
| 85 | return true; | 79 | return true; |
| 86 | }; | 80 | }; |
| 87 | 81 | ||
| 88 | - const getValue = (): Value => { | 82 | + const getValue = (): TestModalValueType => { |
| 89 | const msg = unref(messageContent); | 83 | const msg = unref(messageContent); |
| 90 | const msgType = unref(messageType); | 84 | const msgType = unref(messageType); |
| 91 | const javascriptFunction = unref(scriptContent); | 85 | const javascriptFunction = unref(scriptContent); |
| @@ -138,14 +132,13 @@ | @@ -138,14 +132,13 @@ | ||
| 138 | 132 | ||
| 139 | const result = await executeTestScript(); | 133 | const result = await executeTestScript(); |
| 140 | 134 | ||
| 141 | - outputContent.value = result; | 135 | + outputContent.value = result || ''; |
| 142 | await nextTick(); | 136 | await nextTick(); |
| 143 | unref(jsonEditor)?.handleFormat(); | 137 | unref(jsonEditor)?.handleFormat(); |
| 144 | }; | 138 | }; |
| 145 | 139 | ||
| 146 | const handleSave = async () => { | 140 | const handleSave = async () => { |
| 147 | const flag = await handleValidate(); | 141 | const flag = await handleValidate(); |
| 148 | - | ||
| 149 | flag && emit('save', getValue()); | 142 | flag && emit('save', getValue()); |
| 150 | }; | 143 | }; |
| 151 | 144 |
| @@ -6,7 +6,7 @@ | @@ -6,7 +6,7 @@ | ||
| 6 | import { DataActionModeEnum } from '/@/enums/toolEnum'; | 6 | import { DataActionModeEnum } from '/@/enums/toolEnum'; |
| 7 | import { computed, ref, toRaw, unref, watch } from 'vue'; | 7 | import { computed, ref, toRaw, unref, watch } from 'vue'; |
| 8 | import { ScriptLanguageEnum } from '/@/enums/scriptEnum'; | 8 | import { ScriptLanguageEnum } from '/@/enums/scriptEnum'; |
| 9 | - import { ScriptEditorValueType } from '.'; | 9 | + import { ScriptEditorValueType, TestModalValueType } from '.'; |
| 10 | import { ScriptTestParams } from '/@/api/ruleChainDesigner/model'; | 10 | import { ScriptTestParams } from '/@/api/ruleChainDesigner/model'; |
| 11 | 11 | ||
| 12 | const props = withDefaults( | 12 | const props = withDefaults( |
| @@ -74,14 +74,14 @@ | @@ -74,14 +74,14 @@ | ||
| 74 | }, | 74 | }, |
| 75 | }); | 75 | }); |
| 76 | 76 | ||
| 77 | - const handleSave = (value: Record<'javascriptFunction', string>) => { | 77 | + const handleSave = ({ javascriptFunction }: TestModalValueType) => { |
| 78 | const { jsScript, tbelScript } = props.value || {}; | 78 | const { jsScript, tbelScript } = props.value || {}; |
| 79 | const scriptLang = unref(activeLanguage); | 79 | const scriptLang = unref(activeLanguage); |
| 80 | emit( | 80 | emit( |
| 81 | 'update:value', | 81 | 'update:value', |
| 82 | toRaw({ | 82 | toRaw({ |
| 83 | - jsScript: scriptLang === ScriptLanguageEnum.JavaScript ? value : jsScript, | ||
| 84 | - tbelScript: scriptLang === ScriptLanguageEnum.TBEL ? value : tbelScript, | 83 | + jsScript: scriptLang === ScriptLanguageEnum.JavaScript ? javascriptFunction : jsScript, |
| 84 | + tbelScript: scriptLang === ScriptLanguageEnum.TBEL ? javascriptFunction : tbelScript, | ||
| 85 | scriptLang, | 85 | scriptLang, |
| 86 | } as ScriptEditorValueType) | 86 | } as ScriptEditorValueType) |
| 87 | ); | 87 | ); |
| 1 | +import { MessageTypesEnum } from '../../../enum/form'; | ||
| 1 | import { ScriptLanguageEnum } from '/@/enums/scriptEnum'; | 2 | import { ScriptLanguageEnum } from '/@/enums/scriptEnum'; |
| 2 | 3 | ||
| 3 | export { default as JavaScriptTestModal } from './JavaScriptTestModal.vue'; | 4 | export { default as JavaScriptTestModal } from './JavaScriptTestModal.vue'; |
| @@ -9,3 +10,10 @@ export interface ScriptEditorValueType { | @@ -9,3 +10,10 @@ export interface ScriptEditorValueType { | ||
| 9 | jsScript: string; | 10 | jsScript: string; |
| 10 | tbelScript: string; | 11 | tbelScript: string; |
| 11 | } | 12 | } |
| 13 | + | ||
| 14 | +export interface TestModalValueType { | ||
| 15 | + msg: Recordable; | ||
| 16 | + metadata: Recordable; | ||
| 17 | + msgType: MessageTypesEnum; | ||
| 18 | + javascriptFunction: string; | ||
| 19 | +} |