From 73dc492b2a49793d945ccdae7f5c429c874f298c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=A0=E6=9C=A8?= Date: Fri, 10 Sep 2021 11:24:53 +0800 Subject: [PATCH] feat(markdown-viewer): add new component MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增MarkdownViewer组件用于显示Markdown格式的富文本 close: #1181 --- CHANGELOG.zh_CN.md | 1 + package.json | 2 + src/components/Markdown/index.ts | 2 + .../Markdown/src/MarkdownViewer.vue | 22 +++++++++++ src/views/demo/editor/markdown/index.vue | 28 +++++++++----- yarn.lock | 37 +++++++++++++++++++ 6 files changed, 82 insertions(+), 10 deletions(-) create mode 100644 src/components/Markdown/src/MarkdownViewer.vue diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md index 18ca68d05ad..4c43ef78416 100644 --- a/CHANGELOG.zh_CN.md +++ b/CHANGELOG.zh_CN.md @@ -5,6 +5,7 @@ - 单元格编辑新增提交回调,将根据回调函数返回的结果来决定是否将数据提交到表格 - 行编辑添加校验方法,允许只校验而不提交值,以便异步保存数据成功后才提交倒表格 - 修复`rowClassName`属性无法和`striped`同时使用的问题 +- 新增组件 **MarkdownViewer** 用于显示 Markdown 格式的富文本 ### 🐛 Bug Fixes diff --git a/package.json b/package.json index ef9c92381f0..9504d5160c7 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "print-js": "^1.6.0", "qrcode": "^1.4.4", "resize-observer-polyfill": "^1.5.1", + "showdown": "^1.9.1", "sortablejs": "^1.14.0", "tinymce": "^5.9.2", "vditor": "^3.8.6", @@ -81,6 +82,7 @@ "@types/nprogress": "^0.2.0", "@types/qrcode": "^1.4.1", "@types/qs": "^6.9.7", + "@types/showdown": "^1.9.4", "@types/sortablejs": "^1.10.7", "@typescript-eslint/eslint-plugin": "^4.31.0", "@typescript-eslint/parser": "^4.31.0", diff --git a/src/components/Markdown/index.ts b/src/components/Markdown/index.ts index bbfc5175586..d337681ff7f 100644 --- a/src/components/Markdown/index.ts +++ b/src/components/Markdown/index.ts @@ -1,5 +1,7 @@ import { withInstall } from '/@/utils'; import markDown from './src/Markdown.vue'; +import markDownViewer from './src/MarkdownViewer.vue'; export const MarkDown = withInstall(markDown); +export const MarkdownViewer = withInstall(markDownViewer); export * from './src/typing'; diff --git a/src/components/Markdown/src/MarkdownViewer.vue b/src/components/Markdown/src/MarkdownViewer.vue new file mode 100644 index 00000000000..b453451ea3a --- /dev/null +++ b/src/components/Markdown/src/MarkdownViewer.vue @@ -0,0 +1,22 @@ + + + + + diff --git a/src/views/demo/editor/markdown/index.vue b/src/views/demo/editor/markdown/index.vue index 56a5f5f04c4..968bd910697 100644 --- a/src/views/demo/editor/markdown/index.vue +++ b/src/views/demo/editor/markdown/index.vue @@ -1,22 +1,30 @@