您可以使用诸如reaction-html-parser这样的库,它可以将一个HTML字符串转换为Reaction组件.它还允许用Reaction组件替换指定的元素.
下面是一个使用action-html-parser的示例:
import ReactHtmlParser, { convertNodeToElement } from 'react-html-parser';
function transform(node, index) {
if (node.type === 'tag' && node.name === 'a') {
return <UserLink key={index} href={node.attribs.href}>{node.children[0].data}</UserLink>;
}
}
function MyComponent({ html }) {
return <div>{ReactHtmlParser(html, { transform })}</div>;
}
在Transform函数中,带有href /users/userA
的<a>
标记将转换为<UserLink href="/users/userA">
.
这样,您就可以用您自己的定制Reaction组件替换您的HTML字符串中的某些标记.UserLink组件可以根据您的要求进行定义,包括悬停功能或任何其他自定义行为.