检查变量是 React 节点还是数组

我希望有一个条件,声明如果一个道具是一个 React 节点,那么只需将它作为一个子节点放在一个组件中,如果它不是,则采取一些行动使其成为一个组件。 这样,我的组件将能够接受这个道具作为字符串数组或节点数组。

我试图检查 React.PropTypes.node是否会返回一个布尔值,但它不工作。

假设我有一个叫做 List的模块,还有一个叫做 items的道具,我希望能够通过

var items = [
"One",
"Two",
"Three"
]

还有

var items = function () {
return (
<li>One</li>
<li>Two</li>
<li>Three</li>
)
}

在组件内部有一些逻辑可以检测差异,如果它是一个普通数组(而不是节点数组) ,则可以映射项。

47068 次浏览

React 有一个函数来检查一个变量是否是一个元素,这是 医生

React.isValidElement()