IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Web 富文本编辑器 +Vue Dialog -> 正文阅读

[JavaScript知识库]Web 富文本编辑器 +Vue Dialog

wangEditor

富文本使用起来还是很方便的

npm 安装 npm i wangeditor --save

import E from 'wangeditor'
const editor = new E('#div1')
editor.create()

正常项目来说 一个富文本已经出来了 然后再配置其他就可以

但是 ! ! ! 接手老项目 难免遇见几个旧雷 记录一下俺的冤种经历~

你可能会遇见这样的报错Uncaught Error in Vue (Component: "unnamed"): mounted hook Error: 无效的节点选择器 或者是 wangEdito hook Error: 错误:初始化编辑器时候未传入任何参数,请查阅文档

网上冲冲浪 会不会是版本问题 也许切换低一点会好 npm i wangeditor@4.6.3

如果可以恭喜发财 无事发生

不sing的话 仔细看这个报错 像不像是元素压根没加载出来

不死心的 输出 this.$nextTick

嗯 还是不行

在这里插入图片描述

一个富文本三行代码出来的玩意 我居然现在还没显示 ??? 怒 !

俺仔细研究了一哈 这玩意哪都能出来 就是现在在弹出框里写出不来

就是 element 的 Dialog 对话框

真実はいつもひとつ (柯南推眼镜)

我的富文本在Dialog里没加载出来 哦莫哦莫

我已经可以猜到 又是一个小智障bug了 哭哭

果然 如果你们也遇到这样的bug 先去看一下自己的弹框吧

前人挖坑 后人流泪

留下一些代码 友友们可以参考一下

<el-dialog
    :visible.sync="dialogVisible"
    @opened="eldialogShow"
    @close="$emit('close')"
  >

opened打开的时候 去生成你的富文本

eldialogShow(){
    this.$nextTick(() => {
       this.initEditor();
   });
},

安全起见 我还是选择套在了this.$nextTick里

顺手还写了图片上传


 initEditor(){
        const editor = new E(document.getElementById("content"));
       
        // 配置 server 接口地址
        editor.config.uploadImgServer = this.uploadUrl
      	// 上传图片时,可自定义 filename ,即在使用 formData.append(name, file) 添加图片文件时,自定义第一个参数。
      	// 注意??如果后端有定了字段名 一定记得改这个uploadFileName
        editor.config.uploadFileName = 'xxx'
        // 自定义header头 跟普通的上传附件一样
        editor.config.uploadImgHeaders = {
           'X-Username': getUser().uid,
          'redirectURL': getUploadUrl('uploadPath')
        }
       // 上传图片的不同阶段 
        editor.config.uploadImgHooks={
           before: function (xhr, editor, files) {
        },
        success: function (xhr, editor, result) {
            console.log("上传成功");
        },
        fail: function (xhr, editor, result) {
            console.log("上传失败,原因是" + result);
        },
        error: function (xhr, editor) {
            console.log("上传出错");
        },
        timeout: function (xhr, editor) {
            console.log("上传超时");
        },
        customInsert: function (insertImg, result, editor) {
            // insertImg 是插入图片的函数,editor 是编辑器对象,result 是服务器端返回的结果
            // 举例:假如上传图片成功后,服务器端返回的是 {url:'....'} 这种格式,即可这样插入图片:
            var url = result.url;
            insertImg(url)
         }
        }
        editor.create();
    },

so 这次bug的原因是 . . .
因为 v-if 弹出框 , 富文本没有渲染
改了弹出框的开关方式就好了 果然很弱智啊

留此博客 希望自己以后能细心点啊丢

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 22:23:40  更:2022-03-15 22:24:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 6:48:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码