Javascript 如何在使用危险的HTML呈现内容时禁用React中的链接?
我正在使用React建立一个网站,用户可以键入或复制文本,例如从维基百科输入 主要问题是复制的文本呈现为html,因此我使用Javascript 如何在使用危险的HTML呈现内容时禁用React中的链接?,javascript,reactjs,Javascript,Reactjs,我正在使用React建立一个网站,用户可以键入或复制文本,例如从维基百科输入 主要问题是复制的文本呈现为html,因此我使用危险的SetinenerHTML修复了该问题,并使用DOMPurify这样保护它 <Typography variant="body" dangerouslySetInnerHTML={{ __html: DOMPurify.sanitize(item.label) }} /> 问题是,我不希望
危险的SetinenerHTML
修复了该问题,并使用DOMPurify
这样保护它
<Typography variant="body"
dangerouslySetInnerHTML={{
__html: DOMPurify.sanitize(item.label)
}}
/>
问题是,我不希望在以后呈现该类型文本时链接和重定向该文本
如何解决此问题?如果我假设您的
项.label
值类似于:
<div>
Hello world
<a href="wikipedia.com">Here is the explanation</a>
</div>
你好,世界
我能想到的唯一方法就是使用
诸如此类:
let str=“Hello world”;
const result=str.replace(/(href=[“'])([A-Za-z-\\\\\/:.]*)([“]])/ig,”;
控制台日志(结果);
//您也可以将网站替换为“#”,以保持链接效果,但保持在同一页面:
const result2=str.replace(/(href=[“'])([A-Za-z-\\\\\/:.]*)([“'])/ig,“$1\\$3”);
console.log(result2);
//甚至删除链接本身:
const temp=str.replace(/(你能添加一个项.标签
值的例子吗?你是对的,但我想要更简单的东西,结果是domprify
有这样的东西禁止属性
。谢谢。