首页 > 编程 > JavaScript > 正文

vue项目中使用tinymce编辑器的步骤详解

2019-11-19 12:58:16
字体:
来源:转载
供稿:网友

Tinymce富文本也是一款很流行编辑器

          把文件放在static下,然后在index.html文件中引入这个文件

 <script src="static/tinymce/tinymce.min.js"></script><tinymce :height=200 ref="editor" v-model="editForm.fdcNote"></tinymce>

         在其他子文件中引入这个

 import tinymce from '../components/Tinymce'; components: { tinymce },

然后就可以调用起这个组件了。

下面看下vue项目中使用tinymce编辑器的方法,具体内容如下所示:

第一步:npm install tinymce -S

第二步:创建组件

//增加模版<template> <div>  <textarea :value="value"></textarea> </div></template>//在script中引入import tinymce from "tinymce/tinymce";import "tinymce/themes/modern/theme";import "tinymce/plugins/paste";//这个到最下面那个为需要使用的工具栏模块import "tinymce/plugins/link";import "tinymce/plugins/lists";import "tinymce/plugins/image";import "tinymce/plugins/contextmenu";import "tinymce/plugins/wordcount";import "tinymce/plugins/colorpicker";import "tinymce/plugins/textcolor";import "tinymce/plugins/media";

第三步:对tinymce进行个性化配置

tinymceinit() {   const _this = this;   const setting = {    selector: "#tinymce",    language: "zh_CN",//语言设置中文    menubar: false,//去除文件栏    branding: false,//去除右下角的'由tinymce驱动'    elementpath: false,//左下角的当前标签路径    content_css: ["css文件路径"],//对编辑器内部需要的一些样式    language_url: "zh_CN.js文件的路径",//导入中文语言文件    skin_url: "../../../static/skins/lightgray",//在node_modules中tinymce文件夹中    setup: function(editor) {//设置自定义功能的按钮     editor.addButton("uploadimg", {//单个按钮,此处的uploading是该按钮的名称      icon: "image",  //显示的图像      tooltip: "上传图片",//鼠标放上去后现在是内容      onclick: function() {}     });     editor.addButton("geshi", {//按钮列表,此处的geshi是该按钮的名称      text: "格式",  //显示的文字      type: "menubutton",      menu: [       {        text: "标签",        onclick: function() {}       }      ]     });    },    plugins:     "lists paste link image contextmenu wordcount colorpicker textcolor media imagetools",//对应上方import引入的文件,下面toolbar需要使用到    toolbar:     "geshi bold bullist numlist | uploadimg | alignleft aligncenter alignright alignjustify outdent indent"//定义工具栏   };   Object.assign(setting, _this.setting);   tinymce.init(setting);  },

第四步:在watch中监听传入的value,并修改tinymce的内容

value(newV, oldV) {  tinymce.activeEditor.setContent(newV);},

其他:设置图片

第一种:使用tinymce提供的接口

images_upload_handler: function (blobInfo, success, failure) {  //blobInfo图片对象  uploadimg(){ //上传图片(自己写的方法)    success('图片的路径')    failure('错误提示')  }}

第二种:我自己使用的方法,简单说一下思路

1.使用setup自定义一个按钮,按钮的点击事件就是选择图片(参考input,type=file),并上传

2.将服务器返回的路径包装成<img src='返回的路径'>

3.将自己包装的img标签放入鼠标当前指针处

let dom = tinymce.activeEditor.dom;tinyMCE.execCommand("mceInsertContent",false,dom.createHTML("img", {src: 路径}));

总结

以上所述是小编给大家介绍的vue项目中使用tinymce编辑器的步骤详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表