免费注册网站的平台wordpress 访问者

张小明 2026/1/9 13:52:17
免费注册网站的平台,wordpress 访问者,推广一般去哪发帖,网站建设合同的结构VUE后台管理中使用富文本编辑器导入word 文档进行编辑 前言 最近因业务需求在项目中嵌入了tinymce这个编辑器#xff0c;用于满足平台给用户编辑各类新闻内容什么的业务需求#xff0c;前后也花了不少时间体验和对比了市面上各类开源编辑器#xff0c;直接将新闻部门的工作…VUE后台管理中使用富文本编辑器导入word 文档进行编辑前言最近因业务需求在项目中嵌入了tinymce这个编辑器用于满足平台给用户编辑各类新闻内容什么的业务需求前后也花了不少时间体验和对比了市面上各类开源编辑器直接将新闻部门的工作从半天工作量提升只要一个小时就可以搞到一两分钟就可以搞定一个任务优点文档好功能强bug少无外部依赖。word文档粘贴进来要带格式兼容移动端word文档粘贴进来要正常显示并且还要兼容移动端电脑网页里粘贴进来内容要正常显示并且排版还不能乱电脑网页拷过来的内容还要兼容到移动端安装cssnpm install tinymce tinymce/tinymce-vue3.2.8 -S下载语言包中文语言包下载开始操作文件将依赖包 node_modules 里找到 tinymce文件夹复制到public 里【左图是tinymce右图是public复制后的目录】一下是注意点很多的博客的写法是将 node_modules 里面的skins文件夹复制到public/tinymce目录下经过尝试是不完善的需要将整个目录倒入进public里不完全导入的错误显示我还以为是语言包的问题一个个语言包版本去试这种展示一半英文一半中文的导入tinymcejspublic/index.html 添加 tinymce.js引入基本文件javascript// 引入组件importtinymcefromtinymce/tinymceimportEditorfromtinymce/tinymce-vue// 引入富文本编辑器主题的js和cssimporttinymce/themes/silver/theme.min.jsimporttinymce/skins/ui/oxide/skin.min.css// 扩展插件importtinymce/plugins/imageimporttinymce/plugins/linkimporttinymce/plugins/codeimporttinymce/plugins/tableimporttinymce/plugins/listsimporttinymce/plugins/wordcount注册组件csscomponents:{Editor},使用组件tinymce 初始化配置data(){return{// tinymce的绑定值tinymceHtml:,// tinymce的初始化配置editorInit:{selector:#tinymce,language_url:/tinymce/langs/zh_CN.js,language:zh_CN,skin_url:/tinymce/skins/ui/oxide,height:400,plugins:link lists image code table wordcount importword,toolbar:bold italic underline strikethrough | fontsizeselect | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | outdent indent blockquote | undo redo | link unlink image code | removeformat | importword,//点击富文本图片上传的时候将图片转成base64再通过success插入images_upload_handler:(blobInfo,success){constimgdata:image/jpeg;base64,blobInfo.base64()success(img)},importword_filter:function(result,insert,message){// console.log(result)// console.log(insert)// console.log(message)// 自定义操作部分insert(result)// 回插函数},// statusbar: false // 是否隐藏底部的状态栏// menubar: false, // 是否隐藏最上方的菜单branding:false// 是否禁用“Powered by TinyMCE”}}},整体代码// 引入组件 import tinymce from tinymce/tinymce import Editor from tinymce/tinymce-vue // 引入富文本编辑器主题的js和css import tinymce/themes/silver/theme.min.js import tinymce/skins/ui/oxide/skin.min.css // 扩展插件 import tinymce/plugins/image import tinymce/plugins/link import tinymce/plugins/code import tinymce/plugins/table import tinymce/plugins/lists import tinymce/plugins/wordcount ​ // import { uploadImgage } from /api/activeConfig ​ export default { name: ActiveConfig, components: { Editor }, data() { return { // tinymce的绑定值 tinymceHtml: , // tinymce的初始化配置 editorInit: { selector: #tinymce, language_url: /tinymce/langs/zh_CN.js, language: zh_CN, skin_url: /tinymce/skins/ui/oxide, height: 400, plugins: link lists image code table wordcount importword, toolbar: bold italic underline strikethrough | fontsizeselect | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | outdent indent blockquote | undo redo | link unlink image code | removeformat | importword, // 此处为图片上传处理函数 // images_upload_handler: (blobInfo, success, failure) { // this.handleImgUpload(blobInfo, success, failure) // }, images_upload_handler: (blobInfo, success) { const img data:image/jpeg;base64, blobInfo.base64() success(img) }, importword_filter: function(result, insert, message) { // console.log(result) // console.log(insert) // console.log(message) // 自定义操作部分 insert(result) // 回插函数 }, // statusbar: false // 是否隐藏底部的状态栏 // menubar: false, // 是否隐藏最上方的菜单 branding: false // 是否禁用“Powered by TinyMCE” } } }, mounted() { tinymce.init({}) }, methods: { // 图片上传 handleImgUpload(blobInfo, success, failure) { // this.baseUrl process.env.VUE_APP_BASE_URL // const imgBase64 data:image/jpeg;base64, blobInfo.base64() // const data { img: [imgBase64] } // uploadImgage(data).then(res { // // 传入success回调里的数据就是富文本编辑器里插入图片的src的值 // success(${this.baseUrl}/${res.data[0]}) // }).catch(() { failure(error) }) } } } ​ .activeConfig { -container { margin: 30px; } } ​特殊需求需要找个能实现word文档上传到富文本编辑器减轻编辑机构的负担解决机构需要每次打开文档复制再编辑的繁琐工作实现直接导入编辑tinymce插件一个下载插件一个是注意点图片在富文本是base64的方式导入插件下载示例https://gitee.com/xproer/wordpaster-vue-tinymce5下载解压后将整个文件复制到public的插件目录再往tinymce配置添加即可editorInit.plugins 和 editorInit.toolbar 添加importword即可vbneteditorInit: {selector: ‘#tinymce’,language_url: ‘/tinymce/langs/zh_CN.js’,language: ‘zh_CN’,skin_url: ‘/tinymce/skins/ui/oxide’,height: 400,plugins: ‘link lists image code table wordcount importword’,toolbar: ‘bold italic underline strikethrough | fontsizeselect | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist | outdent indent blockquote | undo redo | link unlink image code | removeformat | importword’}图片解决方案如果碰到图片的问题处理图片有两种方式1、一种在提交内容的时候统一处理图片稿件文件里图片只要提交一次。2、一种是监听图片上传每次更新图片都上传图片。图片上传函数有images_upload_handler第二种jsconst files []const base64ImgSum []for (let i 0; i imgs.length; i) {//去除不用的属性imgs[i].removeAttribute(‘data-mce-src’)imgs[i].removeAttribute(‘alt’)//拿到所有的图片列表imgs[i].src.includes(‘base’) base64ImgSum.push(imgs[i])}//将base64图片转换file文件dataURLToFile(dataURL, filename) {const arr dataURL.split(‘,’)const mime arr[0].match(/.*?);/)[1] // mime类型 image/pngconst bstr atob(arr[1]) // base64 解码let n bstr.length const u8arr new Uint8Array(n) while (n--) { u8arr[n] bstr.charCodeAt(n) } return new File([u8arr], filename, { type: mime }) // return new Blob([a8arr], {type: mime});},//将处理file文件当参处理即可fd.append(‘file’, this.dataURLToFile(base64ImgSum[i].src,${(new Date()).getTime()}.jpg))最终效果
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

个人网站的基本风格有哪些软件技术方案模板

从调试到组网:STM32上的RS232与RS485实战全解析 在工业现场,你是否遇到过这样的场景?设备之间距离几十米,信号干扰严重,数据时断时续;或者调试阶段串口输出乱码,换根线就好了——背后往往就是通…

张小明 2026/1/7 13:22:43 网站建设

如何诚信网站平台建设做服务网站发展背景

在物联网设备快速增长的今天,高效管理MQTT消息流已成为开发者和运维人员的必备技能。MQTT Explorer作为一款功能全面的MQTT客户端工具,以其直观的界面和强大的功能,帮助用户轻松驾驭复杂的消息网络。 【免费下载链接】MQTT-Explorer An all-r…

张小明 2026/1/7 6:14:23 网站建设

购物网站的建设时间asp.net怎么生成网站

Bash Shell 高级特性与命令详解 1. echo 命令 echo 是一个内置命令,是 printf 的早期形式,用于与 Bourne shell 兼容。它不使用格式字符串,会像使用 “%s\n” 格式一样显示所有变量。以下是一些使用示例: $ echo "$BASH_VERSION" 2.05a.0(1)-release默认情…

张小明 2026/1/7 6:16:19 网站建设

每个企业都要做网站吗品牌展板设计制作

还在为三角面模型的重拓扑而烦恼吗?QRemeshify这款强大的Blender插件能够将复杂的三角网格一键转换为规整的四边形拓扑结构。无论你是3D建模新手还是专业人士,这款免费工具都能让你的工作流程发生质的飞跃!✨ 【免费下载链接】QRemeshify A B…

张小明 2026/1/7 7:01:08 网站建设

专业做淘宝网站1688下载安装

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个交互式JSON学习应用,包含:1. JSON基础概念讲解 2. 实时JSON语法检查器 3. 交互式练习(如填空、改错等) 4. 渐进式难度设计 5. 学习进度跟踪。要求界…

张小明 2026/1/6 23:22:39 网站建设

青岛移动网站开发爱站网怎么使用

Kotaemon竞品分析助手:市场情报自动化收集 在金融、电商和咨询等行业,决策的速度与质量往往决定了企业的生死。一个新产品上线、一次融资公告、一条社交媒体动态——这些看似微小的信号,可能预示着巨大的市场变化。然而,现实是&am…

张小明 2026/1/7 6:00:08 网站建设