vue-markdown

vue-markdown

GitHub :https://github.com/zhaoxuhui1122/vue-markdown

在线示例地址

简介

  • 一款使用marked和highlight.js开发的一款markdown编辑器,目前只支持在vue项目中使用;
  • 编辑器涵盖了常用的markdown编辑器功能,工具栏可自定义配置,也可进行二次开发;

安装

npm i -S vue-meditor
或直接复制对应的组件到项目目录内 (推荐)

在项目中使用

import MarkDown from 'vue-meditor'
...
components:{
  MarkDown
}
...
<template>
  <mark-down/>
</template>

props

名称类型说明默认值
initialValueString编辑器初始化内容
widthNumber编辑器宽度
heightNumber编辑器高度,单位 px600
themeString代码块主题配置,共有四个值,分别为Light、Dark、OneDark、GitHubLight
autoSaveBoolean是否自动保存true
intervalNumber自动保存频率,单位毫秒10000
toolbarsObject工具栏配置,具体功能详见工具栏功能配置表
exportFileNameString导出文件的名称未命名文件

events

名称说明
on-save自动保存或者手动保存时触发,返回当前编辑器内原始输入内容和转以后的内容
on-paste-image粘贴图片,返回当前粘贴的file文件

工具栏配置

名称说明默认显示
strong粗体
italic斜体
overline删除线
h1标题1
h2标题2
h3标题3
h4标题4
h5标题5
h6标题6
hr分割线
quote引用
ul无序列表
ol有序列表
code代码块
link链接
imageimage
table表格
checked已完成列表
notChecked未完成列表
shift预览
print打印
theme主题切换
fullscreen全屏
exportmd导出为*.md文件
importmd导入本地*.md文件

其他说明

关于保存时返回值

value // 编辑器输入的原始内容
html // 右侧现实的问转义后的内容
theme // 保存时的主题名字

标题配置

支持配置编辑器名称,提供了name=title的slot插槽

工具栏配置

const config = {
    print:false // 隐藏掉打印功能
}
<MarkDown :toolbars="config"/>

优化代码体积

项目中为了达到代码高亮显示,需要用到highlight.js,由于highlight.js体积过于庞大,项目中按需加载了部分常用的程序语言,可根据需求自行配置,配置目录位于/markdown/js/hljs内


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!