diff --git a/packages/devui-vue/devui/editor-md/src/composables/md-render-service.ts b/packages/devui-vue/devui/editor-md/src/composables/md-render-service.ts index 32e7c5e720..e3e3a688da 100644 --- a/packages/devui-vue/devui/editor-md/src/composables/md-render-service.ts +++ b/packages/devui-vue/devui/editor-md/src/composables/md-render-service.ts @@ -73,7 +73,11 @@ export class MDRenderService { setCustomXssRules(rules: ICustomXssRule[]) { if (rules) { rules.forEach((rule) => { - this.xssWhiteList[rule['key']] = rule['value']; + if (rule['value'] === null) { + delete this.xssWhiteList[rule['key']]; + } else { + this.xssWhiteList[rule['key']] = rule['value']; + } }); } } diff --git a/packages/devui-vue/devui/editor-md/src/editor-md-types.ts b/packages/devui-vue/devui/editor-md/src/editor-md-types.ts index 1774cbd148..40dc634df2 100644 --- a/packages/devui-vue/devui/editor-md/src/editor-md-types.ts +++ b/packages/devui-vue/devui/editor-md/src/editor-md-types.ts @@ -16,7 +16,7 @@ export interface MdPlugin { export interface ICustomXssRule { key: string; - value: string[]; + value: string[] | null; } export interface ICustomRenderRule { diff --git a/packages/devui-vue/devui/editor-md/src/toolbar-config.ts b/packages/devui-vue/devui/editor-md/src/toolbar-config.ts index 29f35fac14..588bd41619 100644 --- a/packages/devui-vue/devui/editor-md/src/toolbar-config.ts +++ b/packages/devui-vue/devui/editor-md/src/toolbar-config.ts @@ -75,8 +75,7 @@ class ToolBarHandler { if (cursor.ch !== 0) { editor.setCursor(cursor.line, 0); - editor.replaceSelection('# ' + selection); - editor.setCursor(cursor.line, cursor.ch + 2); + editor.replaceSelection('# '); } else { editor.replaceSelection('# ' + selection); } @@ -89,8 +88,7 @@ class ToolBarHandler { if (cursor.ch !== 0) { editor.setCursor(cursor.line, 0); - editor.replaceSelection('## ' + selection); - editor.setCursor(cursor.line, cursor.ch + 3); + editor.replaceSelection('## '); } else { editor.replaceSelection('## ' + selection); } diff --git a/packages/devui-vue/docs/components/editor-md/index.md b/packages/devui-vue/docs/components/editor-md/index.md index badb30e6af..fb7b4d1c12 100644 --- a/packages/devui-vue/docs/components/editor-md/index.md +++ b/packages/devui-vue/docs/components/editor-md/index.md @@ -58,6 +58,10 @@ export default defineComponent({ key: 'kbd', value: [], // 为空表示过滤所有属性,放开属性则添加对应项,如['id', 'style'] }, + { + key: 'input', + value: null, // value值为null,则对应标签不会被渲染 + } ]) const customRendererRules = ref([ { @@ -635,7 +639,7 @@ interface ICustomRenderRule { ```ts interface ICustomXssRule { key: string; - value: string[]; + value: string[] | null; } ``` diff --git a/packages/devui-vue/package.json b/packages/devui-vue/package.json index 91b2c9f955..2992568eb6 100644 --- a/packages/devui-vue/package.json +++ b/packages/devui-vue/package.json @@ -1,6 +1,6 @@ { "name": "vue-devui", - "version": "1.6.3-markdown.1", + "version": "1.6.3-markdown.2", "license": "MIT", "description": "DevUI components based on Vite and Vue3", "keywords": [