reactjs - 在 React 中显示来自 WYSIWYG 的 HTML 代码给了我一个警告
问题描述
在这个 React 应用程序中,我有一个保存 HTML 代码的 WYSIWYG 组件。代码保存在数据库中。我显示这样的代码:
import ReactHtmlParser from "react-html-parser";
...
<div className="card-body pt-4">
{ReactHtmlParser(props.project.description)}
</div>
React 不喜欢它并说:
警告:组件是
contentEditable
由children
React 管理的。现在您有责任保证这些节点都不会被意外修改或复制。这可能不是故意的。
我怎样才能解决这个问题?
解决方案
您最有可能使用contentEditable
in props.project.description
。这引发了这样的警告。它的出现是因为该contentEditable
属性可以更改此元素内的内容,而这些更改不受 React 控制。
因此,您有三个选择。
- 不要使用 contentEditable 属性
- 忽略此警告
- 明确告诉 React 你知道这种
contentEditable
行为并且不需要这些通知。
对于第三个选项,使用suppressContentEditableWarning
推荐阅读
- azure - 使用 bicep 将混合连接部署到 webapp
- java - JMH - 如何正确地对线程池进行基准测试?
- python - 使用 Python 计算给定句子中的 T 单元数
- javascript - 通过嵌入式代码将我的弹出窗口显示到其他网站
- string - 使用“show”而不是整个显示字符串时,如何访问数据类型的字段?
- php - Laravel 关系,hasmany 和 blongstomany
- python - 使用 python 计算 CRC 16
- mongodb - MongoDB聚合错误操作超出时间限制
- node.js - 如何使用 node.js ansi-html 修复不支持的错误
- flutter - Flutter streambuilder 不更新有状态小部件或无状态小部件