Javascript 单击标记时尝试导航到另一个屏幕 从“React”导入React; 从“expo”导入{MapView}; 从“../db”导入数据库; 从“@expo/ex-navigation”导入{createRouter,NavigationProvider,StackNavigation}; 从“../screens/selectedPhototag”导入selectedPhototag; 从“react navigation”导入{StackNavigator,NavigationActions}; const nav=StackNavigator({ 照片标签:{ 屏幕:selectedPhototag, }, }); 导出默认类MapScreen扩展React.Component{ 状态={ 标记:[], }; 组件willmount(){ db.child('phototags')。一次('value')。然后(phototags=>{ 让dataArray=[]; for(photoTags.val()中的var键){ push(photoTags.val()[key]); } this.setState({markers:dataArray},()=>{ //log(“[MapScreen]数据”,this.state.markers); }); }); } goTophototags(){ 导航({routeName:nav.phototag}); } render(){ 返回( {this.state.markers.map((marker,i)=> )} ); } }

Javascript 单击标记时尝试导航到另一个屏幕 从“React”导入React; 从“expo”导入{MapView}; 从“../db”导入数据库; 从“@expo/ex-navigation”导入{createRouter,NavigationProvider,StackNavigation}; 从“../screens/selectedPhototag”导入selectedPhototag; 从“react navigation”导入{StackNavigator,NavigationActions}; const nav=StackNavigator({ 照片标签:{ 屏幕:selectedPhototag, }, }); 导出默认类MapScreen扩展React.Component{ 状态={ 标记:[], }; 组件willmount(){ db.child('phototags')。一次('value')。然后(phototags=>{ 让dataArray=[]; for(photoTags.val()中的var键){ push(photoTags.val()[key]); } this.setState({markers:dataArray},()=>{ //log(“[MapScreen]数据”,this.state.markers); }); }); } goTophototags(){ 导航({routeName:nav.phototag}); } render(){ 返回( {this.state.markers.map((marker,i)=> )} ); } },javascript,reactjs,react-native,react-navigation,Javascript,Reactjs,React Native,React Navigation,我试图在点击标记时导航到selectedPhototag屏幕。当前,点击时没有任何反应。应用程序其余部分的导航使用导航栏中的皮带,因此我不确定是否可以使用这些方法,我还想将标记对象传递到新屏幕,应用程序正在使用Expo react Native制作,先绑定它: 构造函数(道具){ 超级(道具); this.goTophototags=this.goTophototags.bind(this); } 2、在这种情况下,您可以直接调用props.navigation.navigate: goTop

我试图在点击标记时导航到selectedPhototag屏幕。当前,点击时没有任何反应。应用程序其余部分的导航使用导航栏中的皮带,因此我不确定是否可以使用这些方法,我还想将标记对象传递到新屏幕,应用程序正在使用Expo react Native制作,先绑定它:

构造函数(道具){
超级(道具);
this.goTophototags=this.goTophototags.bind(this);
}
2、在这种情况下,您可以直接调用props.navigation.navigate:

goTophototags(){
this.props.navigation.navigate('phototag');
}
1,先绑定它:

构造函数(道具){
超级(道具);
this.goTophototags=this.goTophototags.bind(this);
}
2、在这种情况下,您可以直接调用props.navigation.navigate:

goTophototags(){
this.props.navigation.navigate('phototag');
}

没有,仍然没有,我也不明白为什么会这样。为什么要使用
bind
,请在这里阅读
props.navigation。使用字符串导航
,这就是
StackNavigator
的工作原理。只有当它作为道具传递到组件中时。如果我没有弄错的话,这个绑定在这里不会有什么区别,因为它都在同一个上下文中?即使您选择了
导航操作。导航
,您也必须使用
道具发送它。导航
。。。不,仍然没有。我也不明白为什么这会起作用。为什么要使用
bind
,请在这里阅读
props.navigation。使用字符串导航
,这就是
StackNavigator
的工作原理。只有当它作为道具传递到组件中时。如果我没有弄错的话,这个绑定在这里不会有什么区别,因为它都在同一个上下文中?即使您选择了
导航操作。导航
,您也必须使用
道具发送它。导航
。。。