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"] }

然后就没问题了。

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • NV12 to RGB

    NV12 to RGBtypedefunsignedcharUINT8;typedefunsignedintUINT32;staticUINT8RTable[256][256];staticUINT8GTable[256][256][256];staticUINT8BTable[256][256];staticvoidNV12_T_RGB_Table(){inty,u,v,res;for(y=0;y<=255;y++).

  • hibernate和mybatisplus区别_Mybatis框架

    hibernate和mybatisplus区别_Mybatis框架我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和学习,使自己在做项目中更加得心应手。第一方面:开发速度的对比就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些

  • 深度linux iso镜像,深度 Deepin 15 正式版 ISO 镜像下载 – 精美易用适合国人学习的国产 Linux 发行版……「建议收藏」

    深度linux iso镜像,深度 Deepin 15 正式版 ISO 镜像下载 – 精美易用适合国人学习的国产 Linux 发行版……「建议收藏」本帖最后由javy于2016-1-822:06编辑现在除了Windows和Mac之外,越来越多朋友想要学习使用一下Linux系统。不过,国外的诸如CentOS、Ubuntu似乎“专业”了一点,对于新手/普通用户,面向国人的优麒麟或深度操作系统可能更加合适。作为优秀的国产Linux发行版之一,深度Deepin操作系统近年来发展相当迅速,团队投入了十足精力开发和精心设计…

  • jmeter安装及使用

    jmeter安装及使用1、下载好之后,解压到一个目录;2、配置环境变量:2.1、新建:JMETER_HOME,路径为上一步解压得到的路径:D:\software\apache-jmeter-2.92.2、CLASSPATH后面添加英文“;”,然后再添加%JMETER_HOME\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jor…

  • JS文本操作 Scripting.FileSystemObject

    JS文本操作 Scripting.FileSystemObjectScripting.FileSystemObject方法或者属性描述BuildPath()生成一个文件路径CopyFile()复制文件CopyFolder()复制目录CreateFolder()创建新目录CreateTextFile()生成一个文件DeleteFile()删除一个文件DeleteFolder()删

  • 走进webpack(3)– 小结「建议收藏」

    写这一系列的文章,本意是想要梳理一下自己凌乱的webpack知识,只是使用过vue-cli,修改过其中的一部分代码,但是对于一个简单项目从0开始搭建webpack的流程和其中的依赖并不是十分清楚。所以

发表回复

您的电子邮箱地址不会被公开。

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