Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应本机错误:undefined不是对象(计算';"this2.props.navigator.push';)_Javascript_Android_Reactjs_React Native - Fatal编程技术网

Javascript 反应本机错误:undefined不是对象(计算';"this2.props.navigator.push';)

Javascript 反应本机错误:undefined不是对象(计算';"this2.props.navigator.push';),javascript,android,reactjs,react-native,Javascript,Android,Reactjs,React Native,所以基本上,我在标题中得到了与导航器相关的错误。 当我按下图标时,错误弹出 我主要想做的是在顶部创建一个选项卡栏,在三个不同的视图之间切换:提要、wiki和留言板 这是我的index.android.js:(导入导航) \u渲染场景(路线、导航器){ var globalNavigatorProps={navigator}; 道岔(路线识别){ 案例“FeedView”: 返回( ); 案例“WikiView”: 返回( {'Hello'}; ); 案例“BoardView”: 返回( {'He

所以基本上,我在标题中得到了与导航器相关的错误。 当我按下图标时,错误弹出

我主要想做的是在顶部创建一个选项卡栏,在三个不同的视图之间切换:提要、wiki和留言板

这是我的index.android.js:(导入导航)

\u渲染场景(路线、导航器){
var globalNavigatorProps={navigator};
道岔(路线识别){
案例“FeedView”:
返回(
);
案例“WikiView”:
返回(
{'Hello'};
);
案例“BoardView”:
返回(
{'Hello'};
);
违约:
log(`Something erre${route}`);
}
}
render(){
返回(
);
}
这是我的Nav.js:

constructor(props){
    super(props);
}

render(){

    console.log(this.props.navigator);
    return(
        <View style={{flexDirection: "column"}}>
            <View style={styles.nav}>
                <Icon onPress={(event) => this.props.navigator.push({ident: "Feed"})} name="newspaper-o" size={22}/>
                <Icon name="wikipedia-w" size={22}/>
                <Icon name="comments" size={22}/>
            </View>
            <View style={styles.divider}/>
        </View>
    );
}

_changeView(type){

}
构造函数(道具){
超级(道具);
}
render(){
console.log(this.props.navigator);
返回(
this.props.navigator.push({ident:“Feed”})name=“paper-o”size={22}/>
);
}
_更改视图(类型){
}

我认为这不是问题所在,但是renderScene函数不会绑定到react组件


尝试将
renderScene={this.\u renderScene}
转换为
renderScene={this.\u renderScene.bind(this)}

未绑定(this)时总是会发生此错误,检查图标模块onPress方法

如果您试图实现选项卡式视图,有更好的方法可以实现,您可以始终使用像这样的开源模块 开发人员以一种易于使用的方式制作了它,并且该示例足够好,可以完成大部分部分

因此,我建议使用社区制作的模块,而不是自己创建这样的组件


希望我的回答能有所帮助。

我确实尝试过使用该模块,但我不想滚动切换选项卡,也不知道如何更改。嗯,你可以在本机android中完成,然后编写一个桥接器,这很简单,让我看看我是否能找到其他东西问题是没有导航器的参考。您需要将renderScene函数放入其中,并将navigator作为属性传递,这样才能工作。
constructor(props){
    super(props);
}

render(){

    console.log(this.props.navigator);
    return(
        <View style={{flexDirection: "column"}}>
            <View style={styles.nav}>
                <Icon onPress={(event) => this.props.navigator.push({ident: "Feed"})} name="newspaper-o" size={22}/>
                <Icon name="wikipedia-w" size={22}/>
                <Icon name="comments" size={22}/>
            </View>
            <View style={styles.divider}/>
        </View>
    );
}

_changeView(type){

}