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 相关文章推荐
JQuery 获取json数据$.getJSON方法的实例代码
Aug 02 Javascript
jQuery.event兼容各浏览器的event详细解析
Dec 18 Javascript
Area 区域实现post提交数据的js写法
Apr 22 Javascript
分步解析JavaScript实现tab选项卡自动切换功能
Jan 25 Javascript
javascript实现文件拖拽事件
Mar 29 Javascript
Angular2之二级路由详解
Aug 31 Javascript
使用form-create动态生成vue自定义组件和嵌套表单组件
Jan 18 Javascript
详解vue中this.$emit()的返回值是什么
Apr 07 Javascript
vue使用高德地图根据坐标定位点的实现代码
Aug 22 Javascript
JS实现压缩上传图片base64长度功能
Dec 03 Javascript
react 不用插件实现数字滚动的效果示例
Apr 14 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
May 19 jQuery
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 return语句另类用法不止是在函数中
2014/09/17 PHP
php+mysql大量用户登录解决方案分析
2014/12/29 PHP
用PHP生成excel文件到指定目录
2015/06/22 PHP
thinkphp的dump函数无输出实例代码
2016/11/15 PHP
javascript 继承实现方法
2009/08/26 Javascript
Jquery 实现Tab效果 思路是js思路
2010/03/02 Javascript
input 和 textarea 输入框最大文字限制的jquery插件
2011/10/27 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
jquery 实现返回顶部功能
2014/11/17 Javascript
node.js中的fs.writeSync方法使用说明
2014/12/15 Javascript
jquery实现点击展开列表同时隐藏其他列表
2015/08/10 Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
2016/01/26 Javascript
Javascript实现苹果悬浮虚拟按钮
2016/04/10 Javascript
JavaScript必知必会(七)js对象继承
2016/06/08 Javascript
Vue.js -- 过滤器使用总结
2017/02/18 Javascript
Angular 开发学习之Angular CLI的安装使用
2017/12/31 Javascript
webpack打包非模块化js的方法
2018/10/24 Javascript
JSON的parse()方法介绍
2019/01/31 Javascript
使用vue打包进行云服务器上传的问题
2020/03/02 Javascript
分享15个最受欢迎的Python开源框架
2014/07/13 Python
Python切片工具pillow用法示例
2018/03/30 Python
pandas pivot_table() 按日期分多列数据的方法
2018/11/16 Python
Django model update的多种用法介绍
2020/03/28 Python
Python队列RabbitMQ 使用方法实例记录
2019/08/05 Python
详解Python time库的使用
2019/10/10 Python
Python Django框架防御CSRF攻击的方法分析
2019/10/18 Python
Python socket模块ftp传输文件过程解析
2019/11/05 Python
python读取yaml文件后修改写入本地实例
2020/04/27 Python
python 带时区的日期格式化操作
2020/10/23 Python
python 利用jieba.analyse进行 关键词提取
2020/12/17 Python
材料物理专业个人求职信
2013/12/15 职场文书
党支部书记先进事迹
2014/01/17 职场文书
开幕式邀请函
2015/01/31 职场文书
2016年先进教师个人事迹材料
2016/02/26 职场文书
浅谈Redis缓冲区机制
2022/06/05 Redis