diff --git a/packages/editor/src/services/codeBlock.ts b/packages/editor/src/services/codeBlock.ts index 7d2b1517..2f40446c 100644 --- a/packages/editor/src/services/codeBlock.ts +++ b/packages/editor/src/services/codeBlock.ts @@ -106,13 +106,17 @@ class CodeBlock extends BaseService { */ public async setCodeDslById(id: Id, codeConfig: CodeBlockContent): Promise { let codeDsl = await this.getCodeDsl(); + const codeConfigProcessed = codeConfig; + if (codeConfig.content) { + // 在保存的时候转换代码内容 + // eslint-disable-next-line no-eval + codeConfigProcessed.content = eval(codeConfig.content); + } if (!codeDsl) { // dsl中无代码块字段 codeDsl = { [id]: { - ...codeConfig, - // eslint-disable-next-line no-eval - content: eval(codeConfig.content), + ...codeConfigProcessed, }, }; } else { @@ -121,9 +125,7 @@ class CodeBlock extends BaseService { ...codeDsl, [id]: { ...existContent, - ...codeConfig, - // eslint-disable-next-line no-eval - content: eval(codeConfig.content), + ...codeConfigProcessed, }, }; }