关于在vue 中使用百度ueEditor编辑器的方法实例代码


Posted in Javascript onSeptember 14, 2018

1. 安装  npm i vue-ueditor --save-dev

2.从nodemodels  取出ueditor1_4_3_3 这整个目录,放入vue 的 static 目录 

3.配置 ueditor.config.js 的  21行代码  更改路径   var URL = '/static/ueditor1_4_3_3/' || getUEBasePath(); 

 (1)     serverUrl: URL + 'php/controller.php',  这里是你配置的上传内容的 url ;不需要可以删除;

 (2) 部分人使用时出现以下报错:

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里添加下列代码;

2-1.1   或者在webpack.base.conf.js 添加 

loaders: [{

test: /\.js$/,


exclude: /(node_modules|bower_components)/,


loader: 'babel',


query: {


presets: ['es2015']

}}]

4.如果不需要以组建的方式引入 则 可以这么写 ;

<VueUeditor ueditorPath="./../../static/ueditor/" @ready="editorReady"></VueUeditor>
<script>
 import VueUeditor from 'vue-ueditor';
 import ueditor from '../components/UE';
 export default {
  components: {VueUeditor,ueditor},
  data() {
   return {
    defaultMsg: '这里是UE测试',
    content1: '这里是UE',
    ue1: "ue1",
    config: {
     initialFrameWidth: 800,
     initialFrameHeight: 350
    }
   }
  },
  methods: {
    getUEContent() {
    // 获取ueditor值
      let content1 = UE.getEditor(this.ue1).getContentTxt();;
      console.log(content1)
  }, 
    editorReady(editorInstance){
      editorInstance.setContent("哈哈哈")
    }
  }
 };

5.如果要自定义组件的方式 在每个页面引入 则  在components 中新建ue.vue 文件 贴入这个代码

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

然后就可以   import ueditor from '../components/UE';   //引入

<ueditor :content=content1 :config=config :id="ue1"></ueditor> //使用
<script>
 import VueUeditor from 'vue-ueditor';
 import ueditor from '../components/UE';
 export default {
  components: {VueUeditor,ueditor},
  data() {
   return {
    defaultMsg: '这里是UE测试',
    content1: '这里是UE',
    ue1: "ue1",
    config: {
     initialFrameWidth: 800,
     initialFrameHeight: 350
    }
   }
  },
  methods: {
     getUEContent() {
    // 获取ueditor值
      let content1 = UE.getEditor(this.ue1).getContentTxt();;
      console.log(content1)
    },
    editorReady(editorInstance){
       editorInstance.setContent("哈哈哈")
     }
  }
 };
</script>

这样就可以了。

附配置清单

1. 实例化编辑器到id为 container 的 dom 容器上:
   var ue = UE.getEditor('container');
2. 设置编辑器内容:
    ue.setContent('<p>hello!</p>');
3. 追加编辑器内容:
    ue.setContent('<p>new text</p>', true);
4. 获取编辑器html内容:
    var html = ue.getContent();
5. 获取纯文本内容:
    ue.getContentTxt();
6. 获取保留格式的文本内容:
    ue.getPlainTxt();
7. 判断编辑器是否有内容:
    ue.hasContents();
8. 让编辑器获得焦点:
    ue.focus();
9. 让编辑器失去焦点
    ue.blur();
10. 判断编辑器是否获得焦点:
    ue.isFocus();
11. 设置当前编辑区域不可编辑:
    ue.setDisabled();
12. 设置当前编辑区域可以编辑:
    ue.setEnabled();
13. 隐藏编辑器:
    ue.setHide();
14. 显示编辑器:
    ue.setShow();
15. 清空内容:
    ue.execCommand('cleardoc');
16. 读取草稿箱:
    ue.execCommand('drafts');
17. 清空草稿箱:
  ue.execCommand('clearlocaldata');

 本来需求是 从后台读取文件内容,内容是代码,返回到前台,高亮显示像 ide一样可以实时编辑代码,代码可以高亮,类似编辑器的主题一样,然后可以保存提交 到后台,找了半天没找到合适的插件;

总结

以上所述是小编给大家介绍的关于在vue 中使用百度ueEditor编辑器的方法实例代码 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
Dec 07 Javascript
JavaScript中两个感叹号的作用说明
Dec 28 Javascript
javascript编码的几个方法详细介绍
Jan 06 Javascript
jquery自动切换tabs选项卡的具体实现
Dec 24 Javascript
一个JavaScript的求爱小特效
May 09 Javascript
javascript实现textarea中tab键的缩排处理方法
Jun 26 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
Jan 17 Javascript
Vue.js学习笔记之修饰符详解
Jul 25 Javascript
JavaScript的词法结构精华篇
Oct 17 Javascript
javascript的惯性运动实现代码实例
Sep 07 Javascript
layui清空,重置表单数据的实例
Sep 12 Javascript
vue-router的钩子函数用法实例分析
Oct 26 Javascript
react项目实践之webpack-dev-serve
Sep 14 #Javascript
javacript replace 正则取字符串中的值并替换【推荐】
Sep 13 #Javascript
vue删除html内容的标签样式实例
Sep 13 #Javascript
如何解决vue2.0下IE浏览器白屏问题
Sep 13 #Javascript
vue2.0获取鼠标位置的方法
Sep 13 #Javascript
vue实现动态列表点击各行换色的方法
Sep 13 #Javascript
更改BootStrap popover的默认样式及popover简单用法
Sep 13 #Javascript
You might like
php 结果集的分页实现代码
2009/03/10 PHP
用 Composer构建自己的 PHP 框架之使用 ORM
2014/10/30 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
thinkphp,onethink和thinkox中验证码不显示的解决方法分析
2016/06/06 PHP
php实现数组纵向转横向并过滤重复值的方法分析
2017/05/29 PHP
javascript引用对象的方法
2007/01/11 Javascript
js 禁止选择功能实现代码(兼容IE/Firefox)
2010/04/23 Javascript
javascript时间自动刷新实现原理与步骤
2013/01/06 Javascript
jquery教程限制文本框只能输入数字和小数点示例分享
2014/01/13 Javascript
浅谈jQuery中replace()方法
2015/05/13 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
详解JavaScript中基于原型prototype的继承特性
2016/05/05 Javascript
JS工作中的小贴士之”闭包“与事件委托的”阻止冒泡“
2016/06/16 Javascript
jQuery 生成svg矢量二维码
2016/08/09 Javascript
javaScript嗅探执行神器-sniffer.js
2017/02/14 Javascript
React手稿之 React-Saga的详解
2018/11/12 Javascript
JavaScript中Dom操作实例详解
2019/07/08 Javascript
vue 框架下自定义滚动条(easyscroll)实现方法
2019/08/29 Javascript
解决Layui中templet中a的onclick参数传递的问题
2019/09/20 Javascript
javascript实现雪花飘落效果
2020/08/19 Javascript
[43:57]LGD vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python-基础-入门 简介
2014/08/09 Python
Linux CentOS7下安装python3 的方法
2018/01/21 Python
pandas pivot_table() 按日期分多列数据的方法
2018/11/16 Python
python3的url编码和解码,自定义gbk、utf-8的例子
2019/08/22 Python
python lambda表达式在sort函数中的使用详解
2019/08/28 Python
pycharm 代码自动补全的实现方法(图文)
2020/09/18 Python
Python中的None与 NULL(即空字符)的区别详解
2020/09/24 Python
Html5画布_动力节点Java学院整理
2017/07/13 HTML / CSS
End Clothing美国站:英国男士潮牌商城
2018/04/20 全球购物
自荐信怎么写呢?
2013/12/09 职场文书
大学生职业生涯设计书
2014/01/02 职场文书
财务人员的自我评价范文
2014/03/03 职场文书
企业道德讲堂实施方案
2014/03/19 职场文书
房产电话营销开场白
2015/05/29 职场文书