vue集成kindeditor富文本的实现示例代码


Posted in Javascript onJune 07, 2019

指令

该指令的作用是dom渲染后触发,因为非vue的插件有的是dom必须存在的情况下才可以执行

Vue.directive('loaded-callback', {
 inserted: function (el, binding, vnode) {
 binding.value(el, binding, vnode)
 }
})

安装kindeditor

npm install kindeditor

kindeditor组件

<template>
 <div class="kindeditor">
  <textarea class="form-control" ref="kindeditor" v-model="localValue" name="content" v-loaded-callback='initKindeditor'></textarea>
 </div>
</template>

<script>
import '../../../../../node_modules/kindeditor/kindeditor-all.js'
import '../../../../../node_modules/kindeditor/lang/zh-CN.js'
import '../../../../../node_modules/kindeditor/themes/default/default.css'
export default {
 name: 'kindeditor',
 props: ['options', 'value'],
 data () {
  return {
   localValue: ''
  }
 },
 watch: {
  localValue: 'updateValue',
  value: 'setDefault'
 },
 created () {
  this.setDefault()
 },
 methods: {
  initKindeditor () {
    var _this = this
    // 默认参数
    var options = {
      uploadJson: 'upload/image',
      width: '100%',
      afterChange () {
        _this.localValue = this.html()
      }
    }
    // 调用外部参数
    if (_this.options) {
      for(var i in _this.options){
        options[i] = _this.options[i]
      }
    }
    KindEditor.create(_this.$refs.kindeditor,options);
  },
  // 设置初始值
  setDefault () {
   this.localValue = this.value
  },
  // 修改父件的值
  updateValue () {
   this.$emit('input',this.localValue)
  }
 }
}
</script>

用法

<kindeditor :options="options" v-model="content"></kindeditor>

options参考

http://kindeditor.net/docs/option.html

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
Javascript自定义排序 node运行 实例
Jun 05 Javascript
IE浏览器IFrame对象内存不释放问题解决方法
Aug 22 Javascript
JQuery中DOM事件合成用法实例分析
Jun 13 Javascript
jQuery实现简单下拉导航效果
Sep 07 Javascript
简单实现兼容各大浏览器的js复制内容到剪切板
Sep 09 Javascript
Node.js的Web模板引擎ejs的入门使用教程
Jun 06 Javascript
AngularJS实现的JSONP跨域访问数据传输功能详解
Jul 20 Javascript
js断点调试经验分享
Dec 08 Javascript
Node.js npm命令运行node.js脚本的方法
Oct 10 Javascript
基于vue+echarts 数据可视化大屏展示的方法示例
Mar 09 Javascript
解决Vue router-link绑定事件不生效的问题
Jul 22 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
Jan 20 Vue.js
Vue使用Proxy监听所有接口状态的方法实现
Jun 07 #Javascript
你了解vue3.0响应式数据怎么实现吗
Jun 07 #Javascript
ES6小技巧之代替lodash
Jun 07 #Javascript
vue+element 模态框表格形式的可编辑表单实现
Jun 07 #Javascript
vue-cli3项目展示本地Markdown文件的方法
Jun 07 #Javascript
Element实现表格分页数据选择+全选所有完善批量操作
Jun 07 #Javascript
详解vue项目中实现图片裁剪功能
Jun 07 #Javascript
You might like
创建数据库php代码 用PHP写出自己的BLOG系统
2010/04/12 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
2017/11/21 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
用JavaScript将从数据库中读取出来的日期型格式化为想要的类型。
2009/08/15 Javascript
javascript代码运行不出来执行错误的可能情况整理
2013/10/18 Javascript
两个select多选模式的选项相互移动(示例代码)
2014/01/11 Javascript
javascript单引号和双引号的区别和处理
2014/05/14 Javascript
使用jQuery仿苹果官网焦点图特效
2014/12/23 Javascript
javascript HTML+CSS实现经典橙色导航菜单
2016/02/16 Javascript
微信jssdk在iframe页面失效问题的解决措施
2016/03/03 Javascript
jQuery调用WebMethod(PageMethod) NET2.0的方法
2016/04/15 Javascript
详解JavaScript对象类型
2016/06/16 Javascript
如何解决vue与传统jquery插件冲突
2017/03/20 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
bootstrap中的导航条实例代码详解
2019/05/20 Javascript
关于layui toolbar和template的结合使用方法
2019/09/19 Javascript
VUE+node(express)实现前后端分离
2019/10/13 Javascript
Node.js API详解之 os模块用法实例分析
2020/05/06 Javascript
vue 导出文件,携带请求头token操作
2020/09/10 Javascript
[08:54]《一刀刀一天》之DOTA全时刻18:十九支奔赴西雅图队伍全部出炉
2014/06/04 DOTA
pyv8学习python和javascript变量进行交互
2013/12/04 Python
python查找重复图片并删除(图片去重)
2019/07/16 Python
Python 一键获取百度网盘提取码的方法
2019/08/01 Python
Python获取一个用户名的组ID过程解析
2019/09/03 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
对Pytorch 中的contiguous理解说明
2021/03/03 Python
台湾团购、宅配和优惠券:17Life
2017/08/14 全球购物
美国购物网站:Clickhere2shop
2021/01/28 全球购物
给小学生的新年寄语
2014/04/04 职场文书
求职信结尾怎么写
2014/05/26 职场文书
大足石刻导游词
2015/02/02 职场文书
go 实现简易端口扫描的示例
2021/05/22 Golang
MySQL Innodb索引机制详细介绍
2021/11/23 MySQL
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js
Debian11 Xfce终端光标的颜色怎么设置?
2022/08/14 数码科技