html-react-parser:将 DOM 节点替换为另一个 DOM 包含内部文本子节点的节点 (A-link)

html-react-parser: Replace DOM Node with another DOM Node containing inner text child (A-link)

使用html-react-parser,我需要将我的字符串输出为 JSX,但替换所有 <a href=...> 封装新元素 <LinkContainer to={href}><a>..</a></LinkContainer>,它将包含 <a>。换句话说,我将我的 A 链接包装在 LinkContainer 标签中。

问题是,我不知道如何表达我要替换的A-tag的Inner Text,必须包含:

parse(successMessage, { 
        replace: domNode => {
            if (domNode.attribs && domNode.attribs.href) {
                return <LinkContainer to={domNode.attribs.href}><a href="#">How to get the Inner Text?</a></LinkContainer>;
            }  
        }}
    );

没有 innerTexttext 之类的可用内容。到我这里来的DOM个节点是

我找到了解决方案。您可以只替换 A 标签并从 domNode.children[0].data.

获取 link 的文本
    parse(successMessage, { 
            replace: domNode => {
                if (domNode.attribs && domNode.attribs.href) {
                    return <LinkContainer to={domNode.attribs.href}><a href="#">{domNode.children[0].data}</a></LinkContainer>;
                }  
            }}
        )