react 富文本编辑器

基于Slate的React富文本编辑器插件化可扩展支持自定义上传国际化 DSlate 是一个基于Slate 构建的React富文本编辑器。你可以通过插件的方式轻松自定义节点、工具等元素。同时支持自定义上传、国际化。预设了两种常见的UI风格(Ant Design与Semi Design) 阅读详情

yarn add react-draft-wysiwyg draft-js draftjs-to-html html-to-draftjs

import { Component } from 'react'
import 'react-draft-wysiwyg/dist/react-draft-wysiwyg.css'
import { EditorState, convertToRaw, ContentState } from 'draft-js'
import { Editor } from 'react-draft-wysiwyg'
import draftToHtml from 'draftjs-to-html'
import htmlToDraft from 'html-to-draftjs'
import { DepartmentPage } from './style'
class YaEditor extends Component {
	state = {
		editorState: EditorState.createEmpty(),
	}
	
	//在富文本编辑中输入的同时改变状态
	onEditorStateChange = (editorState) => {
		this.setState({
			editorState,
		})
	}

	componentDidMount() {
		const html = '<p>Hey this <strong>editor</strong> rocks 😀</p>'
		// 数据回显函数,将html转换为富文本文字
		const contentBlock = htmlToDraft(html)
		if (contentBlock) {
			const contentState = ContentState.createFromBlockArray(
				contentBlock.contentBlocks
			)
			const editorState = EditorState.createWithContent(contentState)
			console.log(editorState)
			this.setState({
				editorState,
			})
		}
	}

	getRichText = (editorState) => {
		// 将富文本的字装换为html,用于发送给服务器保存
		const htmlStr = draftToHtml(
			convertToRaw(this.state.editorState.getCurrentContent())
		)

		console.log(htmlStr)
        return htmlStr
	}

	render() {
		const { editorState } = this.state
		return (
			<DepartmentPage>
				<Editor
					editorState={editorState}
					wrapperClassName="demo-wrapper"
					editorClassName="demo-editor"
					onEditorStateChange={this.onEditorStateChange}
				/>
				<textarea
					disabled
					value={draftToHtml(convertToRaw(editorState.getCurrentContent()))}
				/>
			</DepartmentPage>
		)
	}
}

export default YaEditor

style.js

import styled from 'styled-components'

export const DepartmentPage = styled.div`
	.demo-editor {
		height: 380px !important;
		border: 1px solid #f1f1f1 !important;
		padding: 5px !important;
		border-radius: 2px !important;
	}
`

记录React之富文本编辑器 使用document.execCommand和contentEditable开发简易版富文本编辑器 阅读详情

相关推荐

在react中使用富文本编辑器 react+wangeditor

在react中使用富文本编辑器 react+wangEditor前言第一步第二步第三步第四步第五步完整代码写在最后 前言 近日在使用react写项目的过程中需要使用到富文本编辑器,之前使用的一直是百度富文本框,这次想换一个,于是看到了一个比较轻量级的富文本编辑器:wangeditor ,正好也满足我当前所需要的需求,所以就决定使用这款编辑器了。这篇文章给了我很大的帮助,感谢作者:react中引入富...

weixin_38514634的博客 1万+

React中实现富文本编辑器

富文本编辑器

NIKKT的博客 3556

【重点突破】—— React实现富文本编辑器

【重点突破】—— React实现富文本编辑器 前言:富文本编辑器Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器。   一、安装插件 react-draft-wysiwyg: 文本编辑器插件 draftjs-to-html:文本转换为html的插件 yarn add react-dr...

柳柳66的博客 5221

好用的React富文本编辑器(Braft Editor)及取色器、表格的应用

富文本编辑器的应用

outstanding木槿 6720

最好用的 5 款 React 富文本编辑器

富文本编辑器常用于网络上各种形式的内容展示,从简单的静态博客到复杂的内容管理系统。它应用于多种应用程序,如博客、文章、列表以及更强大的界面 —— 电商网站商品详情和博客上的。然而,从这么多功能各异的编辑器中挑选出一个合适的并不容易。 我测评了 5 款 React 富文本编辑器,比较了他们编辑器的核心功能, 希望我的测评可以帮你找到最合适你应用场景的编辑器。如果你完全不会前端,也不用担心,可以使用卡拉云,仅需简单拖拽即可生成「富文本」编辑器

蒋川@卡拉云 4976

Draft.js:用于构建文本编辑器的React框架-开源

Draft.js是一个框架,用于在React中构建富文本编辑器,由不可变模型提供支持,并跨跨浏览器差异进行抽象。 Draft.js允许您构建任何类型的富文本输入,无论您是只希望支持几种内联文本样式,还是构建复杂的文本编辑器来撰写长篇文章。 我们提供了构建基础,以使您能够创建从基本文本样式到嵌入式媒体的多种富文本撰写体验。 Draft.js无缝适合React应用程序,使用熟悉的声明性API抽象化渲染,选择和输入行为的细节。 Draft.js模型是用immutable-js构建的,它提供具有功能状态更新的API,并积极利用数据持久性来实现可扩展的内存使用。

reactjs-tiptap-editor:现代富文本编辑器的解决方案

在现代Web应用开发中,富文本编辑器的需求日益增长。本文将为您详细介绍一个优秀的开源富文本编辑器项目——reactjs-tiptap-editor,它基于Tiptap,并使用了Shadcn组件。以下是关于该项目核心功能、技术分析、应用场景及特点的详细阐述。 ## 项目介绍 reactjs-tiptap-editor是一个基于React的WYSIWYG(所见即所得)富文本编辑器。它结合了Tipt

gitblog_00087的博客 1346

西门子S7通信协议TSAP配置全攻略:从默认值到自定义修改(附各型号对照表)

本文深入解析西门子S7通信协议中TSAP配置的核心原理与实战方法。针对S7-200/300/400/1200/1500等主流PLC型号,提供了默认TSAP对照表,并详细阐述了如何根据机架号和插槽号计算或自定义Remote TSAP。文章结合常见连接失败案例,给出了系统化的排错流程,旨在帮助工程师快速打通S7通信链路,提升工业自动化现场调试效率。

weixin_29163797的博客 278

React Summernote:React 开发者的富文本编辑器首选

React Summernote:React 开发者的富文本编辑器首选 项目介绍 react-summernote 是一个专为 React 开发者设计的富文本编辑器组件,它基于广受欢迎的 Summernote 编辑器,并进行了 React 适配,使得在 React 项目中集成富文本编辑器变得异常简单。无论你是开发博客系统、内容管理系统,还是需要一个强大的富文本编辑器来增强用户交互体验,react-...

gitblog_00065的博客 670

Kaamel白皮书:Agent-to-Agent(A2A)隐私安全最佳实践

随着AI智能体架构从单体模型演化为多Agent协同系统,A2A协议为智能生态提供了强大的互操作能力。然而,能力越大,责任亦重。若无完备的隐私保护和安全防护体系,A2A将沦为数据泄露、滥权执行的温床。Kaamel作为专注于泛安全方向的Agent基础设施构建者,呼吁业界将“隐私工程”与“安全编排”作为A2A系统设计的核心前提,共建可信Agent生态,守护智能协同时代的数据主权与系统安全。未来,Kaamel计划发布一套“可信Agent协同蓝图”,涵盖:A2A协议适配Agent SDK工具集;

kaamelai的博客 1598

Linux音频调试实战:ALSA架构与tinymix工具的高级应用技巧

本文深入探讨了Linux音频调试的核心技术,重点解析了ALSA架构下音频信号的路由与混合机制。通过介绍轻量级命令行工具tinymix的高级应用技巧,指导开发者如何精准排查无声、音量异常、多路音频共存等复杂问题,并分享编写自动化测试脚本以提升嵌入式及智能设备音频开发效率的实战方法。

weixin_29210727的博客 101

在React中使用TinyMCE富文本编辑器

富文本编辑器 富文本编辑器(Rich Text Editor,RTE)是一种可内嵌于浏览器,所见即所得的文本编辑器。它提供类似于Office Word 的编辑功能,方便那些不太懂HTML用户使用,富文本编辑器的应用非常广泛,它的历史与图文网页诞生的历史几乎一样长。 作为一个技术人员,手上备上两款富文本编辑器还是很有用的,指不定那个项目就要集成一个进去。到时候现找现用那可就费功夫了,毕竟从开发上讲,每个富文本编辑器的用法都是有区别的。 下面是我收集的一些业界比较受欢迎的富文本编辑器,喜欢的朋友、用过的朋友可以

weixin_43470799的博客 4524

解决Android 14兼容性问题:NDK中arm64-v8a的正确配置方法

本文详细解析Android 14系统架构变化对NDK开发的影响,重点介绍arm64-v8a架构的正确配置方法。针对常见的兼容性问题如so库缺失、ABI不匹配等提供解决方案,并分享性能优化与自动化测试实践,助力开发者高效适配Android 14设备。

algae的博客 1222

React使用tinymce-react富文本编辑器

首先要去官网注册一个账号,注册成功后会得到一个key。如下所示: 然后需要设置一下你的key允许哪些域名访问,如下图: 以上是准备工作,接下来开始使用 项目安装@tinymce/tinymce-react npm install --save @tinymce/tinymce-react ...

qq_40853132的博客 3078

从RADIUS服务器到AP:实战搭建一个小型WPA2-Enterprise测试环境(FreeRADIUS + 家用路由器)

本文详细介绍了如何从零搭建WPA2-Enterprise测试环境,使用FreeRADIUS服务器和家用路由器实现企业级WiFi认证。通过实战指南,包括证书生成、EAP-PEAP配置、OpenWrt路由器设置及故障排查,帮助网络工程师和爱好者掌握802.1X协议栈的实际应用。

weixin_28715953的博客 325

SerDes电路的PCB仿真设计规则及策略

SerDes的PCB设计中,重点工作是使用3D 电磁 (EM) 场求解器,进行过孔结构优化,包括 BGA的扇入和扇出区域以及布线的过孔区域,并且,利用连接器供应商提供加密的 3D 模型,进行连接器和 PCB 的级联仿真,最终获取系统级的通道性能参数,如插入损耗、回波损耗、串扰和模式转换、阻抗曲线等,如果发现任何缺陷,再进行进一步优化,这一过程中,推荐进行拆分仿真,以提高设计效率。

一只豌豆象的博客 2192

如何快速掌握React-Draft-Wysiwyg:面向初学者的完整富文本编辑器指南

React-Draft-Wysiwyg是一个基于ReactJS和DraftJS构建的强大富文本编辑器,它为开发者提供了丰富的文本编辑功能和灵活的定制选项。本文将带你快速掌握这个工具的核心使用方法,从安装配置到高级功能应用,让你轻松在项目中集成专业的富文本编辑体验。 ## 为什么选择React-Draft-Wysiwyg? React-Draft-Wysiwyg作为一款成熟的富文本编辑器解决方案

gitblog_01003的博客 993

【异常】OpenClaw 飞书端 OpenClaw: access not configured. Pairing code: [] Ask the bot owner to approve with

摘要: OpenClaw飞书机器人交互中出现的access not configured报错,是因用户或组织未配置访问权限触发的拦截提示。报错包含组织单元ID和配对校验码,需管理员审批开通权限。普通用户需提交完整报错信息给管理员处理;管理员可通过执行标准化命令单次审批,或批量配置组织白名单优化权限管理。建议提前梳理权限范围、及时同步组织架构变更,并定期审计权限列表以确保安全合规。

奶爸的编程之路,也就一周冷个三天 371

react 如何实现富文本编辑器

react实现富文本编译器

m0_64544033的博客 1073

安装glibc出现../sysdeps/nptl/pthread.h:744:47:error:argument 1 of type ‘struct __jmp_buf_tag *‘ 解决方案

本文主要介绍了安装glibc出现…/sysdeps/nptl/pthread.h:744:47:error:argument 1 of type ‘struct __jmp_buf_tag *’ 解决方案,希望能对使用Linux的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 12万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

基于React,封装富文本编辑器

import React, { Component } from 'react'; import E from 'wangeditor'; import styles from './index.less'; // import xss from 'xss'; const editorConfig = { menus: [ 'head', // 标题 'bold', //...

weixin_41579185的博客 952

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

react富文本编辑器

首先安装两个插件 使用的代码如下 import React from 'react' import {Button,Card,Modal} from 'antd' import {Editor} from 'react-draft-wysiwyg' import 'react-draft-wysiwyg/dist/react-draft-wysiwyg.css' import draftjs f...

Sunny的博客 1571

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

React Umeditor:打造高效、灵活的React富文本编辑器

React Umeditor:打造高效、灵活的React富文本编辑器 项目介绍 react-umeditor 是一个基于 React 的富文本编辑器组件,灵感来源于百度开源的 Umeditor。它不仅继承了 Umeditor 的强大功能,还通过 React 的组件化特性,提供了更加灵活和高效的开发体验。无论是构建博客、论坛,还是企业内部的内容管理系统,react-umeditor 都能帮助你快速实...

gitblog_00306的博客 608

推荐一款强大的React富文本编辑器:React-Wysiwyg

推荐一款强大的React富文本编辑器:React-Wysiwyg 在Web应用开发中,往往需要实现更复杂、功能丰富的文本输入和编辑功能,而不仅仅是简单的textarea或input字段所能满足的。例如Twitter的tweet-box,它拥有语法高亮和自动链接创建等特性。这时,React-Wysiwyg便是一个理想的解决方案。 1、项目介绍 React-Wysiwyg 是一个基于React的富文...

gitblog_00017的博客 721

React Native富文本编辑器——react-native-cn-quill

React Native富文本编辑器——react-native-cn-quill 1. 项目基础介绍 react-native-cn-quill 是一个基于 React Native 的富文本编辑器,它是在 Quill Api 的基础上开发的。Quill 是一个现代的、开源的所见即所得编辑器,以其模块化的架构和丰富的 API 而闻名。本项目主要使用 JavaScript 编程语言,并依赖于 re...

gitblog_01060的博客 470
上一篇: react 错误边界处理
下一篇: react 虚拟滚动
在座的各位都是菜杯
博客等级 码龄5年 3粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值