Ala*_*uza 8 javascript unit-testing reactjs
我正在尝试测试一个反应组件的孩子,我想获得其孩子的文本表示。
有没有类似node.textContentReact的工具?
我想要这样的东西:
let testComponent = (
<Test>
<p>abc</p>
<p>abc2</p>
</Test>
);
expect(testComponent.props.children.toString()).to.equal('abc abc2');
Run Code Online (Sandbox Code Playgroud)
const getNodeText = node => {
if (['string', 'number'].includes(typeof node)) return node
if (node instanceof Array) return node.map(getNodeText).join('')
if (typeof node === 'object' && node) return getNodeText(node.props.children)
}
Run Code Online (Sandbox Code Playgroud)
https://codesandbox.io/s/react-getnodetext-h21ss
// in the picture
{heading} // <Heading>Hello <span className="red">Code</span>Sandbox</Heading>
<pre ref={printInnerHTML}/>
<pre>{getNodeText(heading)}</pre>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3826 次 |
| 最近记录: |