1.安装 插件
npm install vue-ueditor-wrap
2. UEditor 并不支持通过 npm 的方式来安装,vue-ueditor-wrap 也只是一个 Vue 组件,组件本身并不是 UEditor 的 Vue 版。了解 UEditor 基本使用,请参考 UEditor 官网。(我下载的是 php 版本)
将解压的文件夹重命名为 UEditor 并移动到你项目的静态资源目录下,比如下面是一个由 Vue CLI(v3+)创建的项目,静态资源目录就是 public。
3.使用
<script> //引入VueUeditorWrap组件 import VueUeditorWrap from 'vue-ueditor-wrap'; // ES6 Module //注册组件 components: { VueUeditorWrap; } </script>
4.v-model
绑定数据
<vue-ueditor-wrap v-model="content" :config="config" ref="ueditor" @ready="ready"></vue-ueditor-wrap> <script> data(){ return { config: { // 相对路径 UEDITOR_HOME_URL: '/UEditor/', // 编辑器不自动被内容撑高 autoHeightEnabled: false, // 初始容器高度// 初始容器宽度 initialFrameHeight: 300, initialFrameWidth: '100%', toolbars: [[ 'fullscreen', 'source', '|', 'undo', 'redo', '|', 'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|', 'rowspacingtop', 'rowspacingbottom', 'lineheight', '|', 'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|', 'directionalityltr', 'directionalityrtl', 'indent', '|', 'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|', 'link', 'unlink', 'anchor', '|', 'imagenone', 'imageleft', 'imageright', 'imagecenter', '|', 'simpleupload', 'insertimage', '|', 'horizontal', 'date', 'time', 'spechars', 'snapscreen', '|', 'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows', 'splittocols', 'charts' ]], // 不显示字数 // wordCount: false, enableAutoSave:true,//自动保存 // 上传图片路径,需要后台配置,否则控制台会报错。 // 报错信息为 后台配置项返回格式出错,上传功能将不能正常使用! serverUrl: 'http://35.201.165.105:8000/controller.php' }, } } </script>