我从文本区域获得了一些用户生成的 html 标记,我想在屏幕的另一部分呈现它。标记作为字符串保存在组件的 props 中。
出于明显的原因,我不想使用危险的sethtml。是否有诸如 标记 但用于 html 的解析器,以便它去除脚本标签和其他无效的 html。
原文由 silverlight513 发布,翻译遵循 CC BY-SA 4.0 许可协议
我从文本区域获得了一些用户生成的 html 标记,我想在屏幕的另一部分呈现它。标记作为字符串保存在组件的 props 中。
出于明显的原因,我不想使用危险的sethtml。是否有诸如 标记 但用于 html 的解析器,以便它去除脚本标签和其他无效的 html。
原文由 silverlight513 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2.1k 阅读
2 回答1k 阅读✓ 已解决
4 回答979 阅读
2.6k 阅读
2 回答891 阅读
1 回答1.4k 阅读
2 回答508 阅读
使用 sanitize-html 模块清理 html,并使用 dangerouslySetInnerHTML 呈现清理过的字符串。
您可以创建一个简单的包装器组件:
用法:
您还可以使用 react-sanitized-html 的 SanitizedHTML 组件,它是
sanitize-html
的反应包装器: