vue2.0+使用md-edit编辑器

前言:小刘开发过程中,如果是博客项目一般是会用到富文本。众多富文本中,小刘选择了markdown,并记录分享了下来。

bash 复制代码
 # 使用 npm
npm i @kangc/v-md-editor -S

main.js基本配置

import VueMarkdownEditor from '@kangc/v-md-editor';
import '@kangc/v-md-editor/lib/style/base-editor.css';
import vuepressTheme from '@kangc/v-md-editor/lib/theme/vuepress.js';
import '@kangc/v-md-editor/lib/theme/style/vuepress.css';

import Prism from 'prismjs';

VueMarkdownEditor.use(vuepressTheme, {
  Prism,
});




/* 2、v-md-editor 代码块关键字高亮  */
import githubTheme from '@kangc/v-md-editor/lib/theme/github.js';
import '@kangc/v-md-editor/lib/theme/style/github.css';
// 引入所有语言包
import hljs from 'highlight.js';
VueMarkdownEditor.use(githubTheme, {
  Hljs: hljs,
});
 



/**
 * 3.创建行号
 */
import createLineNumbertPlugin from '@kangc/v-md-editor/lib/plugins/line-number/index';

VueMarkdownEditor.use(createLineNumbertPlugin());


Vue.use(VueMarkdownEditor);

页面加载使用

bash 复制代码
<template>
  <div class="hello">
        <v-md-editor v-model="text" height="400px"></v-md-editor>

  </div>
</template>

 <script>
export default {
  data() {
    return {
      text: '',
    };
  },
};
</script>

特别注意:当步骤到行号的时候,会出现依赖有问题;

类似:* @babel/runtime/helpers/interopRequireDefault in ./node_modules/@kangc/v-md-editor/lib/plugins/line-number/index.js To install it, you can run: npm install --save @babel/runtime/helpers/interopRequireDefault Error from chokidar (C:): Error: EBUSY: reso。。。。。。。

这种错误;

解决方案:

当使用 babel 转换 es 6出现下面错误时:

Module not found: Error: Can't resolve

'@babel/runtime/helpers/interopRequireDefault' 我们可以重新安装一下:

npm i @babel/runtime --save-dev

至此:github主题的markdown编辑器基本用法完成了。

运行demo效果:

图片上传功能:将图片上传到服务器,然后回显图片

复制代码
:disabled-menus="[]"
@upload-image="handleUploadImage"

注意

上传图片菜单默认为禁用状态 设置 disabled-menus 为空数组可以开启。

bash 复制代码
 handleUploadImage(event, insertImage, files) {
      // 拿到 files 之后上传到文件服务器,然后向编辑框中插入对应的内容
      console.log(files);

      // 此处只做示例
      insertImage({
        url:
          'https://pic.rmb.bdstatic.com/bjh/down/a477f2b15e2039b9fc7e2282791a9897.jpeg',
        desc: '七龙珠',
        // width: 'auto',
        // height: 'auto',
      });
    },

测试效果如下

相关推荐
Ravenq~7 小时前
无头转换:把 .docx 变成 PDF,不打开编辑器
pdf·编辑器
usdoc文档预览1 天前
USDOC系列之PPT文件在线编辑-VUE前端实现在线浏览器在线编辑PPT文档
前端·vue.js·编辑器·office365·ppt在线编辑·office文件在线编辑·文件在线编辑
寂寞的船1 天前
【Unity知识速递】第4期 MCP for Unity:用 AI 自然语言控制编辑器
人工智能·unity·编辑器
寂寞的船1 天前
【Unity知识速递】第6期 URP性能优化完全指南:从内存到GPU的三维调优
unity·性能优化·编辑器
浮尘笔记2 天前
JetBrains差异设置被自动勾选的排查与根治实录
经验分享·程序人生·编辑器·intellij idea·phpstorm·webstorm
Dream-Y.ocean2 天前
鸿蒙PC平台逻控 PLC 编辑器适配实战:基于 Electron 壳方案的纯 JavaScript 梯形图编程与仿真引擎开发
javascript·编辑器·harmonyos
NextTech_3 天前
不想学 vim,怎么改服务器上的配置文件?
服务器·编辑器·vim
ITKEY_4 天前
emacs 文件管理Dired, the Directory Editor
linux·编辑器·emacs
Solange__5 天前
图片转3D导出GLB、FBX还是OBJ?按5类任务比较材质、动画与可编辑性
人工智能·3d·ai·自然语言处理·编辑器·blender·材质
ThatMonth5 天前
vscode 编辑器怎么打开多页签,而不是覆盖已有的页签
编辑器