element-tiptap富文本编辑器

npm安装

npm install element-tiptap --save

yarn安装

yarn add element-tiptap

全局引入

import Vue from 'vue';
import ElementUI from 'element-ui';
import { ElementTiptapPlugin } from 'element-tiptap';
// 引入 ElementUI 样式
import 'element-ui/lib/theme-chalk/index.css';
// 引入 import element-tiptap 样式
import 'element-tiptap/lib/index.css';// 安装 ElementUI 插件
Vue.use(ElementUI);
// 安装 element-tiptap 插件
Vue.use(ElementTiptapPlugin, {lang: 'zh', // 设置语言为中文
});

局部引入

<script>
import {ElementTiptap,// 需要的 extensionsDoc,Text,Paragraph,Heading,Bold,Underline,Italic,Strike,ListItem,BulletList,OrderedList,Link,Image,CodeBlock,Blockquote,TodoItem,TodoList,TextAlign,FontSize,FontType,Fullscreen,TextHighlight,TextColor,FormatClear,Table,TableHeader,TableCell,TableRow,History,TrailingNode,HardBreak,HorizontalRule,LineHeight,Indent
} from 'element-tiptap';export default {data () {// 编辑器的 extensions// 它们将会按照你声明的顺序被添加到菜单栏和气泡菜单中return {extensions: [new Doc(), // 必须项new Text(), // 必须项new Paragraph(), // 必须项new Heading({ level: 6 }), // 标题new Bold({ bubble: true }), // 加粗 bubble: true 在气泡菜单中渲染菜单按钮new Underline({ bubble: true, menubar: false }), // 下划线 bubble: true, menubar: false 在气泡菜单而不在菜单栏中渲染菜单按钮new Italic({ bubble: true }), // 斜体new Strike({ bubble: true }), // 删除线new ListItem(), // 使用列表必须项new BulletList({ bubble: true }), // 无序列表new OrderedList({ bubble: true }), // 有序列表new Link(), // 链接new Image(), // 图片new CodeBlock({ bubble: true }), // 代码块new Blockquote(), // 引用new TodoItem(), // 任务列表必须项new TodoList(), // 任务列表new TextAlign({ bubble: true }), // 文本对齐方式new FontSize({ bubble: true }), // 字号new FontType({ bubble: true }), // 字体new Fullscreen(), // 全屏new TextHighlight({ bubble: true }), // 文本高亮new TextColor({ bubble: true }), // 文本颜色new FormatClear({ bubble: true }), // 清除格式new Table({ resizable: true }), // 表格new TableHeader(), // 表格必须项new TableCell(), // 表格必须项new TableRow(), // 表格必须项new History(), // 撤销new TrailingNode(), // 重做new HardBreak(), // 分割线new HorizontalRule(), // 行距new LineHeight(), // 增加缩进new Indent() // 减少缩进],// 编辑器的内容content: `<h1>Heading</h1><p>This Editor is awesome!</p>`,};},
},
</script>

注意:局部引入同样需要在main.js中引入element-tiptap样式文件

// 引入 import element-tiptap 样式
import 'element-tiptap/lib/index.css';

使用

<template><div><el-tiptapv-model="content":extensions="extensions"lang="zh"/></div>
</template>

注意:如果使用的是局部引入,需要在使用的时候指定 lang="zh",否则会报错

自定义图片上传

element-tiptap的本地图片上传默认将图片转换成base64格式,然后与内容保存在一起,可以在extensions中自定义图片的上传方式

new Image({// 自定义图片上传(默认会把图片生成base64字符串和内容存储到一起)// 返回一个 Promise<url>uploadRequest(file) {// 自定义图片上传方式}
}),

报错(Duplicate use of selection JSON ID cell)

找到根目录下的 node_modules/tiptap-extensions/node-modules,将最后的 node-modules 改为node-modules–,即可解决

element-tiptap中文文档

vue中使用element-tiptap富文本编辑器相关推荐

  1. vue中引入TinyMCE实现富文本编辑器

    整片文章是以vue2.X 引入tinymce富文本编译器 首先,先确认你的vue版本是 2 还是 3 ,查看项目的package.json中vue的版本,我的是2.5.2 一共两个步骤 vue工程中安 ...

  2. element ui富文本编辑器的使用(quill-editor)

    element ui富文本编辑器的使用(quill-editor) 文章目录 element ui富文本编辑器的使用(quill-editor) 效果展示:(可以上传图片及其视频) 第一步.首先安装富 ...

  3. 强悍!基于Vue的无渲染的富文本编辑器——tiptap!

    介绍 tiptap编辑器基于Prosemirror,完全可扩展且无渲染.可以轻松地将自定义节点添加为Vue组件. Github https://github.com/scrumpy/tiptap 为什 ...

  4. 控制富文本table不能超过div宽度_强悍!基于Vue的无渲染的富文本编辑器——tiptap!...

    介绍 tiptap编辑器基于Prosemirror,完全可扩展且无渲染.可以轻松地将自定义节点添加为Vue组件. Github https://github.com/scrumpy/tiptap 为什 ...

  5. vue中如何使用wangEditor 富文本框

    在做后台管理项目时常常会用到富文本编辑器,在这里推荐大家使用wangEditor,亲测好用 话不多说先上图 第一步安装 npm wangeditor --save 第二步在项目中使用 先建立一个wan ...

  6. vue实战025:配置TinyMCE富文本编辑器

    目录 组件安装 组件引用 添加模板 初始化编辑器 常用属性配置 扩展插件使用 之前分享了一篇vue实战021:Vue-Quill-Editor富文本编辑器使用,有网友说TinyMCE更好用,所以今天来 ...

  7. VUE快速简单搭建UEditor富文本编辑器

    效果图如下所示 Installation npm i vue-ueditor-wrap 下载 UEditor 官网链接: http://ueditor.baidu.com/website/downlo ...

  8. element ui 富文本编辑器

    安装 cnpm install vue-quill-editor -s<el-form-item label="推送内容"> <!-- <el-input ...

  9. Vue中TipTap富文本编辑器的输入框内部分样式无法显示

    在这个问题上卡了好几天,后来才发现是scoped的问题.在自己写的样式上加上scoped,Tiptap编辑器的输入框样式放在另外一个<style>里,不加scoped就行了 如下图,上面的 ...

  10. vue+tiptap ,基于vue的无渲染的富文本编辑器

    安装tiptap 官网: github:https://github.com/ueberdosis/tiptap 演示:https://www.vue365.cn/code_demo.php?id=9 ...

最新文章

  1. appium()-The event firing
  2. C++ 中的 #pragma warning(push) 和 #pragma warning(pop)有什么用
  3. linux awk菜鸟教程,Linux awk 命令
  4. C++中XML的读写操作(生成XML 解析XML)
  5. sql 教程_SQL
  6. 卷积神经网络发展简史
  7. Oracle Data Guard的配置
  8. html5怎么联网,HTML5--离线web应用
  9. SeetafaceV6人脸定位/识别/年龄预测/性别预测/口罩有无/眼睛睁闭
  10. 做跨境不知道选什么类目,看看这些常青树类目
  11. 真正的高手,都在自讨苦吃——数显之家快讯之【SHIO世硕心语】
  12. Uint8 Uint16等的区别
  13. 公里与英里的换算c语言函数_80迈=80迈=80公里?过年了许多开车回家的老司机都未必清楚!...
  14. not allowed to launch “localhost:81/XXXXX“
  15. 【毕业设计】基于springboot的小区智慧物业管理系统
  16. JDK8新特性详解Lambda、StreamAPI、Optional等
  17. Error: stat_count() can only have an x or y aesthetic Run `rlang::last_error()` to see where the err
  18. 普林斯顿大学颜宁教授宣布全职加盟深圳医学科学院
  19. 一部手机就能搞定!3分钟教你制作专属片头片尾,简单易懂
  20. python cad 提取高程点_CAD地形图如何提取出高程点文件?

热门文章

  1. linux 查询文件大小M为单位
  2. 如何使用Tera Term Language (TTL)
  3. 若依框架----登录界面美化
  4. 如何利用百度图片搜索进行引流?原理是怎样的?
  5. English Learning - L2-14 英音地道语音语调 重音技巧 2023.04.10 周一
  6. kafka消息系统-海量数据迁移方案
  7. 随机森林算法的Python实现
  8. 知乎热议:“所有专业都在劝退”,对大学生最友好的竟是它?
  9. hackbar2.1.3免费版本使用教程
  10. 初遇Flarum_搭建安装的遇坑填坑过程