Text strings must be rendered within a Text component的一个情况

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

This error is located at:
    in RCTView (at FriendposterShareDetail.tsx:345)
    in RCTView (at src/index.js:292)


遇到如上的错误导致闪退问题.

一般来说,是jsx中文字或者某些手误导致一些字符串没有被合适的组件包裹,如 就会包这个错误,一般在编译过程中就会体现,

这一次记录一个由写法和数据共同引起的问题

<View>
            {this.props.accountInfo.qrCodePath && (
              <Image
                source={{uri: this.props.accountInfo.qrCodePath}}
                style={{width: px2dp(92), height: px2dp(92)}}
              />
            )}
</VIiew>

一旦~~~~~
一旦
一旦
此处我们的 qrCodePath 为 空字符串时 即 “” , 这个写法在jsx中就会报出该错误

解决办法

换成三目运算写法即可

或则

单独写一个方法, 返回组件也行, 不会遇到该错误

你可能感兴趣的:(react-native,JavaScript)