React集成tinymce插件

目录

一、Tinymce介绍

二、React集成Tinymce

1、安装@tinymce/tinymce-react组件

2、React中引用

三、如何配置中文语言包

1、下载中文包

2、把语言文件放入tinymce

3、tinymce配置项中配置语言


一、Tinymce介绍

官网:The Most Advanced WYSIWYG Editor | Trusted Rich Text Editor | TinyMCE

中文官网:TinyMCE中文文档中文手册

描述:一个富文本插件,部分插件收费

二、React集成Tinymce

1、安装@tinymce/tinymce-react组件

bash 复制代码
npm install --save @tinymce/tinymce-react

对应版本:

"react": "^18.2.0",

"@tinymce/tinymce-react": "^4.3.0",

2、React中引用

javascript 复制代码
...
import { Editor } from '@tinymce/tinymce-react';
...

const handleEditorChange = (content: any, editor: any) => {
  console.log('Content was updated:', content);
}

const EditorPanel: FC =()=> {
  const editorRef: any = useRef(null);
   return (
     <>
       <Editor
         onInit={(evt, editor) => editorRef.current = editor}
         init={{
           height: '100%',
           menubar: false,
           language: 'zh_CN',
           plugins: [
             'advlist autolink lists link image charmap print preview anchor',
             'searchreplace visualblocks code fullscreen',
             'insertdatetime media table paste code help wordcount'
           ],
           toolbar: 'undo redo | formatselect | ' +
           'bold italic backcolor | alignleft aligncenter ' +
           'alignright alignjustify | bullist numlist outdent indent | ' +
           'removeformat | help',
           content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px }'
         }}
        onEditorChange={handleEditorChange}
       />
     </>
   );     
  }
export {EditorPanel}

效果如下:

三、如何配置中文语言包

1、下载中文包

下载地址:https://www.tiny.cloud/get-tiny/language-packages/ 选择zh-CN;

压缩包解压缩后会得到一个zh-CN.js的语言文件;

2、把语言文件放入tinymce

把语言文件(zh-CN.js )移入node_modules/tinymce/langs目录下(如果没有langes文件夹,新建一个即可,文件名不可修改)

3、tinymce配置项中配置语言

相关推荐
摆烂工程师5 小时前
2025年12月最新的 Google AI One Pro 1年会员教育认证通关指南
前端·后端·ai编程
Gavin在路上6 小时前
DDD之用事件风暴重构“电商订单履约”(11)
java·前端·重构
我命由我123456 小时前
VSCode - VSCode 颜色值快速转换
前端·ide·vscode·前端框架·编辑器·html·js
前端涂涂6 小时前
怎么设计一个加密货币 谁有权利发行数字货币 怎么防止double spending attack 怎么验证交易合法性 铸币交易..
前端
JuneTT6 小时前
【JS】使用内连配置强制引入图片为base64
前端·javascript
前端涂涂6 小时前
4.BTC-协议
前端
老前端的功夫6 小时前
移动端兼容性深度解析:从像素到交互的全方位解决方案
前端·前端框架·node.js·交互·css3
代码与野兽6 小时前
AI交易,怎么让LLM自己挑选数据源?
前端·javascript·后端
CC码码6 小时前
前端文本分割工具,“他”来了
前端·javascript·程序员
linhuai6 小时前
flutter实现Mock数据
前端