关于在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 相关文章推荐
jQuery弹出框代码封装DialogHelper
Jan 30 Javascript
javascript继承的六大模式小结
Apr 13 Javascript
Node.js+Express配置入门教程
May 19 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
Jul 24 Javascript
关于JS中的方法是否加括号的问题
Jul 27 Javascript
vuejs2.0实现一个简单的分页示例
Feb 22 Javascript
JavaScript验证知识整理
Mar 24 Javascript
js实现同一个页面,多个enter事件绑定的示例
Oct 10 Javascript
为vue项目自动设置请求状态的配置方法
Jun 09 Javascript
javascript实现自由编辑图片代码详解
Jun 21 Javascript
JavaScript switch语句使用方法简介
Dec 30 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
Aug 03 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中获取变量的变量名的一段代码的bug分析
2011/07/07 PHP
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
PHP过滤黑名单关键字的方法
2014/12/01 PHP
PHP数组函数知识汇总
2016/05/12 PHP
js trim函数 去空格函数与正则集锦
2009/11/20 Javascript
Javascript学习笔记8 用JSON做原型
2010/01/11 Javascript
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
2010/11/11 Javascript
JQuery实现简单验证码提示解决方案
2012/12/20 Javascript
jQuery判断checkbox是否选中的小例子
2013/12/02 Javascript
JavaScript中按位“异或”运算符使用介绍
2014/03/14 Javascript
js与jquery回车提交的方法
2015/02/03 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
基于Bootstrap和jQuery构建前端分页工具实例代码
2016/11/23 Javascript
jQuery中的一些小技巧
2017/01/18 Javascript
用element的upload组件实现多图片上传和压缩的示例代码
2019/02/12 Javascript
基于layui的table插件进行复选框联动功能的实现方法
2019/09/19 Javascript
jquery实现弹窗(系统提示框)效果
2019/12/10 jQuery
JS检索下拉列表框中被选项目的索引号(selectedIndex)
2019/12/17 Javascript
js实现简单的无缝轮播效果
2020/09/05 Javascript
Python之日期与时间处理模块(date和datetime)
2017/02/16 Python
对python读取CT医学图像的实例详解
2019/01/24 Python
python 画二维、三维点之间的线段实现方法
2019/07/07 Python
详解Python图像处理库Pillow常用使用方法
2019/09/02 Python
深入浅析python变量加逗号,的含义
2020/02/22 Python
简单介绍HTML5中的文件导入
2015/05/08 HTML / CSS
德国鞋子网上商店:Omoda.de
2017/03/31 全球购物
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
StubHub澳大利亚:购买或出售您的门票
2019/08/01 全球购物
Marc O’Polo俄罗斯官方在线商店:德国高端时尚品牌
2019/12/26 全球购物
公务员的自我鉴定
2013/10/26 职场文书
党员群众路线承诺书
2014/05/20 职场文书
车辆年审委托书范本
2014/09/18 职场文书
党的群众路线教育实践活动个人对照检查材料(医生)
2014/11/05 职场文书
故意杀人案辩护词
2015/05/21 职场文书
2019财务毕业实习报告
2019/06/27 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python