是否可以检查对象是否为JSX我对反应和预演感兴趣。
var x = <App/>
var y = <div>xxx</div>我想出了这个:
function isJSX(x) {
return typeof x.props === 'object' && x.props !== null && typeof x.type !== 'undefined';
}有更好的办法吗?我不确定其他库,如HyperApp和Preact。这个功能可靠吗?输出来自Babel。是否有一个规范可以显示JSX转发程序的输出应该是什么?
这是我的测试笔
发布于 2019-10-25 13:52:21
jsx主要是React.createElement的句法糖。您可以使用isValidElement ( React提供的助手)来检查给定的element是否有效。
const isValid = React.isValidElement(element)发布于 2019-10-25 13:53:31
也许你需要React.isValidElement。
一些来自反应源的测试。
ReactElement:/ReactElement-test.js#L 298-L 318
ReactJSXElement:/ReactJSXElement-test.js#L156-L166
https://stackoverflow.com/questions/58559714
复制相似问题