Vue-Quill-Editor富文本编辑器的使用教程


Posted in Javascript onSeptember 21, 2018

本文为大家分享了Vue Quill Editor富文本编辑器的具体使用方法,供大家参考,具体内容如下

先看效果图:

Vue-Quill-Editor富文本编辑器的使用教程    

 1、下载Vue-Quill-Editor 

npm install vue-quill-editor --save

2、下载quill(Vue-Quill-Editor需要依赖) 

npm install quill --save

3、代码 

<template>
  <div class="edit_container">
    <quill-editor 
      v-model="content" 
      ref="myQuillEditor" 
      :options="editorOption" 
      @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"
      @change="onEditorChange($event)">
    </quill-editor>
  </div>
</template>
<script>
import { quillEditor } from "vue-quill-editor"; //调用编辑器
import 'quill/dist/quill.core.css';
import 'quill/dist/quill.snow.css';
import 'quill/dist/quill.bubble.css';
export default {
  components: {
    quillEditor
  },
  data() {
    return {
      content: `<p></p><p><br></p><ol><li><strong><em>Or drag/paste an image here.</em></strong></li><li><strong><em>rerew</em></strong></li><li><strong><em>rtrete</em></strong></li><li><strong><em>tytrytr</em></strong></li><li><strong><em>uytu</em></strong></li></ol>`,
      editorOption: {}
    }
  },
  methods: {
    onEditorReady(editor) { // 准备编辑器
 
    },
    onEditorBlur(){}, // 失去焦点事件
    onEditorFocus(){}, // 获得焦点事件
    onEditorChange(){}, // 内容改变事件
  },
  computed: {
    editor() {
      return this.$refs.myQuillEditor.quill;
    },
  }
}
</script>

OK,搞定,简洁的富文本编辑器就展现在你眼前了,另外附上API。Vue-Quill-Editor

4、存储及将数据库中的数据反显为HTML字符串

后台接收到数据后会将字符中的标签进行转码,所以我们要先进行一个解码的操作让他变成标签形式的字符串:
例如后台接收的数据如下:"<h1>title<"  ,对应解码后就是`<h1>title</h1>`。

//把实体格式字符串转义成HTML格式的字符串
escapeStringHTML(str) {
  str = str.replace(/</g,'<');
  str = str.replace(/>/g,'>');
  return str;
}

然后将返回值赋值给对应的参数: 

<div v-html="str" class="ql-editor">
  {{str}}
</div>

上面的str就是转码函数返回的值,我们要先在data中定义,所以我现在将新增跟展示放在一起,代码如下:

<template>
  <div class="edit_container">
    <!-- 新增时输入 -->
    <quill-editor 
      v-model="content" 
      ref="myQuillEditor" 
      :options="editorOption" 
      @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"
      @change="onEditorChange($event)">
    </quill-editor>
    <!-- 从数据库读取展示 -->
    <div v-html="str" class="ql-editor">
      {{str}}
    </div>
  </div>
</template>
<script>
import { quillEditor } from "vue-quill-editor"; //调用编辑器
import 'quill/dist/quill.core.css';
import 'quill/dist/quill.snow.css';
import 'quill/dist/quill.bubble.css';
export default {
  components: {
    quillEditor
  },
  data() {
    return {
      content: `<p></p><p><br></p><ol><li><strong><em>Or drag/paste an image here.</em></strong></li><li><strong><em>rerew</em></strong></li><li><strong><em>rtrete</em></strong></li><li><strong><em>tytrytr</em></strong></li><li><strong><em>uytu</em></strong></li></ol>`,
      str: '',
      editorOption: {}
    }
  },
  methods: {
    onEditorReady(editor) { // 准备编辑器
 
    },
    onEditorBlur(){}, // 失去焦点事件
    onEditorFocus(){}, // 获得焦点事件
    onEditorChange(){}, // 内容改变事件
    // 转码
    escapeStringHTML(str) {
      str = str.replace(/</g,'<');
      str = str.replace(/>/g,'>');
      return str;
    }
  },
  computed: {
    editor() {
      return this.$refs.myQuillEditor.quill;
    },
  },
  mounted() {
    let content = ''; // 请求后台返回的内容字符串
    this.str = this.escapeStringHTML(content);
  }
}
</script>

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript监测ActiveX控件是否已经安装过的代码
Sep 02 Javascript
javascript客户端解决方案 缓存提供程序
Jul 14 Javascript
Javascript 倒计时源代码.(时.分.秒) 详细注释版
May 09 Javascript
jQuery Tools tooltip使用说明
Jul 14 Javascript
关于JavaScript中的关联数组分析
Apr 09 Javascript
js 异步操作回调函数如何控制执行顺序
Dec 24 Javascript
基于编写jQuery的无缝滚动插件
Aug 02 Javascript
javascript实现锁定网页、密码解锁效果(类似系统屏幕保护效果)
Aug 15 Javascript
jQuery事件用法实例汇总
Aug 29 Javascript
JavaScript获取一个范围内日期的方法
Apr 24 Javascript
JS正则RegExp.test()使用注意事项(不具有重复性)
Dec 28 Javascript
JS常用倒计时代码实例总结
Feb 07 Javascript
vue+axios实现文件下载及vue中使用axios的实例
Sep 21 #Javascript
vue-rx的初步使用教程
Sep 21 #Javascript
基于Vue 服务端Cookies删除的问题
Sep 21 #Javascript
Vue中插入HTML代码的方法
Sep 21 #Javascript
node.js调用C++函数的方法示例
Sep 21 #Javascript
Vue中Quill富文本编辑器的使用教程
Sep 21 #Javascript
vue单页应用在页面刷新时保留状态数据的方法
Sep 21 #Javascript
You might like
PHP日期函数date格式化UNIX时间的方法
2015/03/19 PHP
Thinkphp自定义生成缩略图尺寸的方法
2019/08/05 PHP
js的touch事件的实际引用
2014/10/13 Javascript
对比分析AngularJS中的$http.post与jQuery.post的区别
2015/02/27 Javascript
javascript实现添加附件功能的方法
2015/11/18 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
2016/10/10 Javascript
vue绑定设置属性的多种方式(5)
2017/08/16 Javascript
JavaScript插件Tab选项卡效果
2017/11/14 Javascript
LayerClose弹窗关闭刷新方法
2018/08/17 Javascript
小程序实现选择题选择效果
2018/11/04 Javascript
vue-cli3 karma单元测试的实现
2019/01/18 Javascript
JavaScript实现无限级递归树的示例代码
2019/03/29 Javascript
原生js实现3D轮播图
2020/03/21 Javascript
js 闭包深入理解与实例分析
2020/03/19 Javascript
Python中动态创建类实例的方法
2017/03/24 Python
Python中的pygal安装和绘制直方图代码分享
2017/12/08 Python
用tensorflow搭建CNN的方法
2018/03/05 Python
python实现txt文件格式转换为arff格式
2018/05/31 Python
pytorch + visdom 处理简单分类问题的示例
2018/06/04 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
2019/05/13 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
2020/01/10 Python
通过实例了解Python str()和repr()的区别
2020/01/17 Python
Python %r和%s区别代码实例解析
2020/04/03 Python
python学习将数据写入文件并保存方法
2020/06/07 Python
关于前端上传文件全面基础扫盲贴(入门)
2019/08/01 HTML / CSS
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
String这个类型的class为何定义成final?
2012/11/13 面试题
SQL注入攻击的种类有哪些
2013/12/30 面试题
2014新年元旦活动策划方案
2014/02/18 职场文书
警示教育活动总结
2014/05/05 职场文书
班级体育活动总结
2014/07/05 职场文书
2015年结对帮扶工作总结
2015/05/04 职场文书
python实现简易名片管理系统
2021/04/11 Python
php双向队列实例讲解
2021/11/17 PHP
golang使用map实现去除重复数组
2022/04/14 Golang