vue2.0项目中使用Ueditor富文本编辑器示例

vue2.0项目中使用Ueditor富文本编辑器示例

最近在vue项目中需要使用富文本编辑器,于是将Ueditor集成进来,作为公共组件。
在线预览:https://suweiteng.github.io/vue2-management-platform/#/editor
项目地址:https://github.com/suweiteng/vue2-management-platform 记得在右上角点个赞哦~

1.放入静态资源并配置

首先把官网下载的Ueditor资源,放入静态资源src/static中。
vue2.0项目中使用Ueditor富文本编辑器示例
修改ueditor.config.js中的window.UEDITOR_HOME_URL配置,如下图:
vue2.0项目中使用Ueditor富文本编辑器示例

2.引入

在main.js中引入

import '../static/UE/ueditor.config.js' import '../static/UE/ueditor.all.min.js' import '../static/UE/lang/zh-cn/zh-cn.js' import '../static/UE/ueditor.parse.min.js'

3.开发公共组件

开发公共组件,可设置填充内容defaultMsg,配置信息config(宽度和高度等),并提供获取内容的方法。

<template> <div> <script id="editor" type="text/plain"></script> </div> </template> <script> export default { name: 'UE', data () { return { editor: null } }, props: { defaultMsg: { type: String }, config: { type: Object } }, mounted() { const _this = this; this.editor = UE.getEditor('editor', this.config); // 初始化UE this.editor.addListener("ready", function () { _this.editor.setContent(_this.defaultMsg); // 确保UE加载完成后,放入内容。 }); }, methods: { getUEContent() { // 获取内容方法 return this.editor.getContent() } }, destroyed() { this.editor.destroy(); } } </script> 

4.使用

当我们需要使用富文本编辑器时,直接调用公共组件即可

<template> <div class="components-container"> <div class="info">UE编辑器示例<br>需要使用编辑器时,调用UE公共组件即可。可设置填充内容defaultMsg,配置信息config(宽度和高度等),可调用组件中获取内容的方法。</div> <button @click="getUEContent()">获取内容</button> <div class="editor-container"> <UE :defaultMsg=defaultMsg :config=config ref="ue"></UE> </div> </div> </template> <style> .info{ border-radius: 10px; line-height: 20px; padding: 10px; margin: 10px; background-color: #ffffff; } </style> <script> import UE from '../../components/ue/ue.vue'; export default { components: {UE}, data() { return { defaultMsg: '这里是UE测试', config: { initialFrameWidth: null, initialFrameHeight: 350 } } }, methods: { getUEContent() { let content = this.$refs.ue.getUEContent(); this.$notify({ title: '获取成功,可在控制台查看!', message: content, type: 'success' }); console.log(content) } } }; </script>

效果如下:
vue2.0项目中使用Ueditor富文本编辑器示例

5.报错

ESlint报错

eslint报错的参考请评论4L 5L

严格模式报错

部分人使用时出现以下报错:
Uncaught TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them...
这个问题是因为项目中的使用的babel默认添加了use strict造成,可参考 https://segmentfault.com/q/1010000007415253
我采用的是链接中答案的第三种方式:添加了babel-plugin-transform-remove-strict-mode,并在.babelrc里添加下列代码

{
  "plugins": ["transform-remove-strict-mode"] }

然后就没问题了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113779.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 监控在服务器中的作用和功能,视频安防监控服务器能实现哪些功能以及解决哪些问题呢…

    监控在服务器中的作用和功能,视频安防监控服务器能实现哪些功能以及解决哪些问题呢…随着物联网的快速发展,视频安防监控服务器开发也在不断的进步,核心技术是进行视频监控服务器开发的重要基础。但由于要满足用户的各种各样的需求,还需要解决很多相关技术。那么视频安防监控服务器能实现哪些功能?解决哪些问题呢?下面就和小编一起来了解下吧。1、操作系统其实操作系统的开发是一个很困难的技术问题,列为核心技术绝不为过,但是正因为难度太大,仅仅为开发视频监控服务器而开发DM642上的操作系统代价太大…

    2022年6月28日
    23
  • PS磨皮滤镜降噪插件套装Imagenomic Professional Plugin Suite有什么功能

    PS磨皮滤镜降噪插件套装Imagenomic Professional Plugin Suite有什么功能ImagenomicProfessionalPluginSuitemac版是一款PS磨皮降噪滤镜插件套装,其中包含noiseware降噪插件、portraiture3磨皮滤镜和Realgrain胶片效果滤镜插件,各有各的功能,可以轻松完成磨皮、添加胶片效果、降噪等。PS磨皮滤镜降噪套装官方介绍Portraiture3 皮肤修饰 自动皮肤平滑,愈合和增强效果插件 Noiseware 消除噪音 屡获殊荣的插件和独立的照片降噪 Realgrain

    2022年7月22日
    11
  • Java IO流自动关闭

    Java IO流自动关闭Filef=newFile();Filedes=newFile();try(FileInputStreaminput=newFileInputStream(f);FileOutputStreamout=newFileOutputStream(des);){}catch(FileNotFoundExceptione1){ }catch(IO…

    2022年5月27日
    31
  • 作用域链和原型链的区别_原型链和作用域链

    作用域链和原型链的区别_原型链和作用域链题外话:最近面试一直被问到作用域链的问题,所以还是要深入透彻的学习一下这两个概念。作用域链在红宝书中对作用域链的描述有这么一段话:当代码在一个环境中执行时,会创建变量对象的一个作用域链。作用域链的用途是保证对执行环境有权访问的所有变量和函数的有序访问。作用域链的前端始终是当前执行的代码所在环境的变量对象。如果这个环境是函数,则将其活动对象作为变量对象。活动对象在最开始时只包含一个变量,即argume

    2022年10月27日
    0
  • 用Matlab绘制相平面图「建议收藏」

    用Matlab绘制相平面图「建议收藏」MATLAB相图程序Eg1:clc;clear;close;[x,y]=meshgrid(linspace(-6,6));%定义[x,y]网络采样点的范围h=streamslice(x,y,y,-2.*x);%描述系统坐标的微分方程title(‘极限环的相平面图’)%定义标题范围xlabel(‘x’,’Color’,[0.60.50.4]);ylabel(‘y’,’C

    2022年5月15日
    45
  • JAVA标识符命名规则及命名规范[通俗易懂]

    JAVA标识符命名规则及命名规范[通俗易懂]文章目录一、标识符可以标识什么二、标识符是什么三、标识符命名规则一、标识符可以标识什么标识符可以标识类名、方法名、变量名、接口名、常量名等。二、标识符是什么凡是程序员自己有权利命名单词的叫做标识符。但是main虽然是标识符,但是程序员不能修改。三、标识符命名规则命名规则属于语法机制,必须遵守,不遵守命名规则标识符不符合语法,编译器会报错。规则1:标识符只能有数字、字母(包括中文)、下划线、美元符号$组成。规则2:不能以数字开头。规则3:java关键字和保留字不能做为标识符。规则4:标

    2022年7月8日
    14

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号