React Native Expo:无法添加没有YogaNode的孩子-Android上的错误

时间:2018-07-22 15:39:15

标签: react-native react-native-android

我被这个错误困住了:

Cannot add a child that doesn't have a YogaNode to a parent without a measure function! 
(Trying to add a 'ReactRawTextShadowNode' to a 'LayoutShadowNode')

该应用程序已在Expo上运行,并在iOS中正常运行 但是在Android上,按身份验证按钮时总是会出现此错误。

之前运行正常,我试图重置提交以跟踪错误,但没有帮助。

我认为,只要执行此函数,就会出现错误:

onButtonPress = async () => {
  const { code } = this.props;
  await this.props.loginUser({ code });
  if (this.props.error) {
   await AsyncStorage.removeItem('code');
   this.props.navigation.goBack();
  } else {
    await AsyncStorage.setItem('code', code);
    await this.props.orderUpdate();
    await this.props.menuFetch();
    this.props.navigation.navigate('main');
  }
};

请注意,道具正在访问redux状态并调用redux动作。

1 个答案:

答案 0 :(得分:1)

此问题有不同的原因:

  • 可能是组件的render方法中的注释,因此请尝试删除组件component的render方法中的注释。
  • 可能是因为您没有正确关闭标签
  • 可能在渲染方法中使用&&运算符,因此请删除“ &&” 运算符并使用三元运算符。

代替{ foobar && <View/> }

使用此{ foobar ? <View/> : null }