Navigator Invariant Violation:onlyChild必须传递只有一个孩子的孩子

时间:2015-12-07 23:59:52

标签: react-native

我在我的应用中使用Navigator和TouchableHighlight时出错 这是我的index.ios.js(render和renderScene函数)的代码:

      render: function() {

        return (
          <View>
          <Navigator
           renderScene={this.renderScene}>
          </Navigator>
          </View>
       )
      },

     renderScene: function(route, nav) {
          return <LoginView navigator={nav} />;
     }

这是LoginView的代码

    var LoginView = React.createClass({
      onPress: function() {

      },
      render: function() {

        return (

            <View>
              <TouchableHighlight />
            </View>

        )
      },
    });

我确定发生这种情况是因为TouchableHighlight只能有一个孩子(在TouchableHihglight.js的渲染功能中,使用了onlyChild.js中的onlyChild函数来验证子节点数) 我不明白为什么在我的情况下,TouchableHighlight有一个以上的孩子(因为我看到它根本没有孩子)???

希望你帮助我们(:

1 个答案:

答案 0 :(得分:6)

您需要将一个孩子传递给TouchableHighlight。像这样:

<TouchableHighlight>
  <Text>Hello</Text>
</TouchableHighlight>

将消除错误。