vue集成百度UEditor富文本编辑器使用教程


Posted in Javascript onSeptember 21, 2018

在前端开发的项目中,难免会遇到需要在页面上集成一个富文本编辑器。那么,如果你有这个需求,希望可以帮助到你。

vue是前端开发者所追捧的框架,简单易上手,但是基于vue的富文本编辑器大多数太过于精简。于是我将百度富文本编辑器放到vue项目中使用。效果图如下

vue集成百度UEditor富文本编辑器使用教程

废话不多说。

1、使用vue-cli构建一个vue项目。然后下载UEditor源码,地址

把项目复制到vue项目的static文件下。目的是让服务可以访问到里面的文件,打开UEditor目录文件。这里下载的是jsp版本的。文件名字没有更改过。打开里面的ueditor.config.js文件找到serverUrl把这行代码注释了。这个代码是用来上传图片的后台地址。如果不注释了会请求报错。编辑器跑起来再做服务配置修改地址。

2、在.vue文件中引入主要js文件

import ‘../../static/utf8-jsp/ueditor.config' 
import ‘../../static/utf8-jsp/ueditor.all'; 
import ‘../../static/utf8-jsp/lang/zh-cn/zh-cn';

3、在data中申明一个变量存储UEditor的实例方便在vue的其他地方使用,然后申明一个变量存储手动获取的编辑器里面的内容,再什么一个变量存储初始化时要写入编辑器的内容。三个变量。如果操作得当。可以减少变量的时候。这是笨办法

4、在vue的mounted钩子函数中调用编辑器的方法生成实例存储到刚刚申明的变量中,在实例中传入参数。第一个是id,id是生成编辑器的div的id。第二个参数是一个对象。对象内容是对编辑器的配置。如资源访问路径,toolbars内容配置。

5、在html部分写一个div标签

<div id="editor" type="text/plain" style="width:1024px;height:500px;"></div>

6、然后配置资源路径。在实例化的时候传入的参数里。第二个参数是一个对象。内容包括路径。

this.ue = UE.getEditor('editor',{ 
BaseUrl: '', 
UEDITOR_HOME_URL: 'static/utf8-jsp/', 
});

这个UEDITOR_HOME_URL就是配置编辑器自己访问自己所需要的依赖的路径。设置到存放的文件下utf8-jsp是编辑器文件的更目录。目录不一样可自行更改

7、然后保存。就可以在界面上显示一个完整的富文本编辑器

8、如果要获取内容则使用在data里面申明的编辑器实例在vue中this.实例调用方法getContent()可以获取到内容

9如果要设置内容则调用:setContent('欢迎使用ueditor');

更多方法参考官方文档。

10、文档内容属于个人踩坑的心得。如有错误。请留言指出。谢谢

11、需要注意的是资源路径容易搞错。使用相对路径即可

12、贴出代码

html

<template> 
<div class="hello"> 
<div id="editor" type="text/plain" style="width:1024px;height:500px;"></div> 
<button @click="submits">保存</button> 
<button @click="xieru">写入</button> 
</div> 
</template>

js

<script> 
import '../../static/utf8-jsp/ueditor.config' 
import '../../static/utf8-jsp/ueditor.all'; 
import '../../static/utf8-jsp/lang/zh-cn/zh-cn'; 
export default { 
 name: 'hello', 
 data () { 
 return { 
  ue: '', 
  uedata: [], 
  xierudata: [] 
 } 
}, 
mounted() { 
 this.ue = UE.getEditor('editor',{ 
 BaseUrl: '', 
 UEDITOR_HOME_URL: 'static/utf8-jsp/', 
 // toolbars:[] 
}); 
}, 
 methods: { 
 submits(){ 
 this.uedata.push(UE.getEditor('editor').getContent()); 
 console.log(this.uedata.join("\n")); 
}, 
 xieru(){ 
 UE.getEditor('editor').setContent('欢迎使用ueditor'); 
} 
} 
} 
</script>

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

Javascript 相关文章推荐
JavaScript OOP类与继承
Nov 15 Javascript
Javascript学习笔记一 之 数据类型
Dec 15 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
Jul 22 Javascript
向当前style sheet中插入一个新的style实现方法
Apr 01 Javascript
JS实现点击按钮自动增加一个单元格的方法
Mar 09 Javascript
Vue渲染函数详解
Sep 15 Javascript
vue之浏览器存储方法封装实例
Mar 15 Javascript
vue 实现边输入边搜索功能的实例讲解
Sep 16 Javascript
深入浅析Vue.js 中的 v-for 列表渲染指令
Nov 19 Javascript
vue项目添加多页面配置的步骤详解
May 22 Javascript
jquery实现手风琴案例
May 04 jQuery
Element Tooltip 文字提示的使用示例
Jul 26 Javascript
JavaScript 2018 中即将迎来的新功能
Sep 21 #Javascript
vue 弹框产生的滚动穿透问题的解决
Sep 21 #Javascript
vue-quill-editor富文本编辑器简单使用方法
Sep 21 #Javascript
探秘vue-rx 2.0(推荐)
Sep 21 #Javascript
Vue-Quill-Editor富文本编辑器的使用教程
Sep 21 #Javascript
vue+axios实现文件下载及vue中使用axios的实例
Sep 21 #Javascript
vue-rx的初步使用教程
Sep 21 #Javascript
You might like
解析数组非数字键名引号的必要性
2013/08/09 PHP
php创建session的方法实例详解
2015/01/27 PHP
PHP二维数组排序简单实现方法
2016/02/14 PHP
php+mysql查询实现无限下级分类树输出示例
2016/10/03 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
不用一句js代码初始化组件
2016/01/27 Javascript
JavaScript 动态三角函数实例详解
2017/01/08 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
Angular2环境搭建具体操作步骤(推荐)
2017/08/04 Javascript
JS二分查找算法详解
2017/11/01 Javascript
Javascript中prototype与__proto__的关系详解
2018/03/11 Javascript
使用vue-infinite-scroll实现无限滚动效果
2018/06/22 Javascript
三种Webpack打包方式(小结)
2018/09/19 Javascript
layui实现数据表格自定义数据项
2019/10/26 Javascript
[42:24]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第三场 11.27
2020/12/01 DOTA
wxpython 学习笔记 第一天
2009/03/16 Python
Python实现在线程里运行scrapy的方法
2015/04/07 Python
python模拟Django框架实例
2016/05/17 Python
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
python机器学习实战之K均值聚类
2017/12/20 Python
使用Numpy读取CSV文件,并进行行列删除的操作方法
2018/07/04 Python
python实现点对点聊天程序
2018/07/28 Python
python 利用for循环 保存多个图像或者文件的实例
2018/11/09 Python
Python实现定时执行任务的三种方式简单示例
2019/03/30 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
2020/01/03 Python
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
输入N,打印N*N矩阵
2012/02/20 面试题
零件设计自荐信范文
2013/11/27 职场文书
个人简历自荐信
2014/06/26 职场文书
公司授权委托书范文
2014/08/02 职场文书
优秀教师先进材料
2014/12/16 职场文书
地陪导游欢迎词
2015/01/26 职场文书
大学生个人总结范文
2015/02/15 职场文书
四年级数学教学反思
2016/02/16 职场文书
MySQL中distinct和count(*)的使用方法比较
2021/05/26 MySQL
Python标准库之typing的用法(类型标注)
2021/06/02 Python