gpt4 book ai didi

javascript - react native : can't a method be used from 'routeMapper' ?

转载 作者:行者123 更新时间:2023-11-30 09:46:58 25 4
gpt4 key购买 nike

我正在使用 https://github.com/root-two/react-native-drawer 的 React Native Drawer |

我试图通过将变量传入 NavigationBarRouteMapper 来调用方法 openDrawer()。我尝试在 NavigationBarRouteMapper 中登录,它记录了正确传入的变量。但是当它在 NavigationBarRouteMapper 内部使用时,通过单击“打开抽屉”的左导航按钮,它不会执行任何操作:

class drawerPractice extends Component {
...

openDrawer(){
this._drawer.open()
}

render() {
return (
<Drawer
content={<DrawerPanel/>}
openDrawerOffset={100}
ref={(ref) => this._drawer = ref}
type='static'
tweenHandler={Drawer.tweenPresets.parallax}
>
<Navigator
configureScene={this.configureScene}
initialRoute={{name: 'Start', component: Start}}
renderScene={this.renderScene}
style={styles.container}
navigationBar={
<Navigator.NavigationBar
style={styles.navBar}
routeMapper={NavigationBarRouteMapper(this.openDrawer)}
/>
}
/>
</Drawer>
);
}
}

var NavigationBarRouteMapper = openDrawer => ({
LeftButton(route, navigator, index, navState){
return(
<TouchableHighlight onPress={()=>{openDrawer}}>
<Text>Open Menu</Text>
</TouchableHighlight>
)
}
},...

为什么可能是这个问题?

最佳答案

在您的 constructor() 方法中添加:this.openDrawer = this.openDrawer.bind(this);

您可能在错误的范围内使用了 this

关于javascript - react native : can't a method be used from 'routeMapper' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38512322/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com