当前位置: 首页 > article >正文

React富文本编辑器wangEditor

1.安装

npm install @wangeditor/editor-for-react --save
或者
yarn add @wangeditor/editor-for-react

2.使用案例 

组件内部分:

import '@wangeditor/editor/dist/css/style.css' // 引入 css
import React, { useState, useEffect } from 'react'
import { Editor, Toolbar } from '@wangeditor/editor-for-react'

function MyEditor({defaultHtml,updateHtml}) {
    const [editor, setEditor] = useState(null) // 存储 editor 实例
    const [html, setHtml] = useState(defaultHtml) // 编辑器内容

    useEffect(() => {
			updateHtml(html)
    }, [html])
	
    const toolbarConfig = {}
    const editorConfig = {
        placeholder: '请输入内容...',
    }

    // 及时销毁 editor ,重要!
    useEffect(() => {
        return () => {
            if (editor == null) return
            editor.destroy()
            setEditor(null)
        }
    }, [editor])

    return (
        <>
            <div style={{ border: '1px solid #ccc', zIndex: 100,height:'350px',padding:'1vh 0', }}>
                <Toolbar
                    editor={editor}
                    defaultConfig={toolbarConfig}
                    mode="default"
                    style={{ borderBottom: '1px solid #ccc' }}
                />
                <Editor
                    defaultConfig={editorConfig}
                    value={html}
                    onCreated={setEditor}
                    onChange={editor => setHtml(editor.getHtml())}
                    mode="default"
                    style={{ height: '50%', 'overflow-y': 'hidden' }}
                />
            </div>
        </>
    )
}

export default MyEditor;

(1)传递的一个dufaultHTML作为富文本编辑器的默认值,供编辑的场景使用。
(2)updateHTML作为用于富文本编辑器的值发生变化后向父组件暴漏出来的当前最新的值,父组件使用高阶函数来获取编辑器最新的值。


http://www.kler.cn/a/161593.html

相关文章:

  • NoSQL数据库与关系型数据库的主要区别
  • C++单例模式实现
  • 24/11/12 算法笔记<强化学习> Policy Gradient策略梯度
  • vue2或vue3的name属性有什么作用?
  • FFmpeg 4.3 音视频-多路H265监控录放C++开发十三:将AVFrame转换成AVPacket。视频编码原理.编码相关api
  • sql专题 之 sql的执行顺序
  • 【Ajax】发送get请求获取接口数据
  • 【计算机组成体系结构】SRAM和DRAM
  • Java网络编程,使用UDP实现TCP(一), 基本实现三次握手
  • 排序算法之三:希尔排序
  • java第三十一课
  • Unity——鼠标控制摄像机移动,(距离)缩放,旋转
  • Linux篇之在Centos环境下搭建Nvidia显卡驱动
  • MacOS VSCode 配置远程服务器ssh remote链接,并上传文件文件服务器
  • 力扣150题 |80.删除有序数组中的重复项II
  • Boost:asio多io_service,多线程run
  • Unity中Batching优化的GPU实例化(3)
  • 万户协同办公平台ezoffice wpsservlet接口任意文件上传漏洞
  • uni-app 微信小程序之好看的ui登录页面(四)
  • JM中ref_pic_list_modification bug记录
  • 金融行业文件摆渡,如何兼顾安全和效率?
  • 视频封面提取:精准截图,如何从指定时长中提取某一帧图片
  • 性能优化一条龙
  • Spring Boot的日志
  • 【PyTorch】模型的基本操作
  • html电子签名