React Native中渲染的坑

解决方案来自StackOverflow

问题

React Native从 0.54 升级到 0.57,代码报了以下错误

Invariant Violation: Text strings must be rendered within a <Text> component

乍一看好像是文本没有写在<Text>标签里,查了一下代码发现没有这个问题。最后网上搜索后解决

以下为伪代码:

1
condition && <MyComponent />;

需要修改为:

1
condition ? <MyComponent /> : null;

这是因为conditionundefined时,将不会渲染任何组件,而null空数组可以安全的显示空白区域

Tips: undefined && true 与 true && undefined 的结果都为 undefined


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!