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 相关文章推荐
基于jquery的模态div层弹出效果
Aug 21 Javascript
打开新窗口关闭当前页面不弹出关闭提示js代码
Mar 18 Javascript
jQuery ajax dataType值为text json探索分享
Sep 23 Javascript
网页右侧悬浮滚动在线qq客服代码示例
Apr 28 Javascript
兼容主流浏览器的JS复制内容到剪贴板
Dec 12 Javascript
jQuery遍历DOM元素与节点方法详解
Apr 14 Javascript
浅析jquery如何判断滚动条滚到页面底部并执行事件
Apr 29 Javascript
Vue2 SSR渲染根据不同页面修改 meta
Nov 20 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
Sep 10 Javascript
js回调函数原理与用法案例分析
Mar 04 Javascript
浅谈element中InfiniteScroll按需引入的一点注意事项
Jun 05 Javascript
Angular利用HTTP POST下载流文件的步骤记录
Jul 26 Javascript
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开发工具之vs2005图解
2008/01/12 PHP
PHP程序61条面向对象分析设计的经验小结
2008/11/12 PHP
php5与php7的区别点总结
2019/10/11 PHP
线路分流自动跳转代码;希望对大家有用!
2006/12/02 Javascript
关于递归运算的顺序测试代码
2011/11/30 Javascript
JavaScript 高级篇之函数 (四)
2012/04/07 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
jquery根据name属性查找的小例子
2013/11/21 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
2014/05/28 Javascript
javascript去掉代码里面的注释
2015/07/24 Javascript
javascript创建对象、对象继承的实用方式详解
2016/03/08 Javascript
ES6中非常实用的新特性介绍
2016/03/10 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
Vue中img的src属性绑定与static文件夹实例
2017/05/18 Javascript
在vue-cli搭建的项目中增加后台mock接口的方法
2018/04/26 Javascript
vue webpack开发访问后台接口全局配置的方法
2018/09/18 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
基于elementUI竖向表格、和并列的案例
2020/10/26 Javascript
朴素贝叶斯Python实例及解析
2018/11/19 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
python爬取基于m3u8协议的ts文件并合并
2019/04/26 Python
Python 可变类型和不可变类型及引用过程解析
2019/09/27 Python
tensorflow求导和梯度计算实例
2020/01/23 Python
Python3标准库glob文件名模式匹配的问题
2020/03/13 Python
python torch.utils.data.DataLoader使用方法
2020/04/02 Python
基于Tensorflow读取MNIST数据集时网络超时的解决方式
2020/06/22 Python
python 进制转换 int、bin、oct、hex的原理
2021/01/13 Python
分享一个H5原生form表单的checkbox特效代码
2018/02/26 HTML / CSS
茶叶生产计划书
2014/01/10 职场文书
学习决心书范文
2014/03/11 职场文书
2014年流动人口工作总结
2014/11/26 职场文书
2015年度个人思想工作总结
2015/04/08 职场文书
消防安全主题班会
2015/08/12 职场文书
月考总结与反思
2015/10/22 职场文书
浅谈Redis变慢的原因及排查方法
2022/06/21 Redis