>我在抽屉和导航器方面遇到问题
https://github.com/root-two/react-native-drawer
问题是当我按下抽屉上带有回调以推送另一个视图的任何按钮时,它会非常慢这是我的代码
render() {
return <Navigator
ref={(nav) => { navigator = nav; }}
initialRoute={{name:'PlayingNow'}}
renderScene={this.renderScene}
configureScene={(route, routeStack) => ({
...route.sceneConfig || Navigator.SceneConfigs.PushFromRight,
gestures: route.gestures
})}
sceneStyle={{backgroundColor:'#F5FCFF'}}
/>
}
renderScene(route, navigator){
let Component = ROUTES[route.name];
return(
<Drawer
type="overlay"
content={<DrawerContent route={route} navigator={navigator}/>}
tapToClose={true}
panOpenMask={0.1}
openDrawerOffset={0.25} // 20% gap on the right side of drawer
panCloseMask={0.2}
closedDrawerOffset={0}
tweenHandler={(ratio) => ({
main: { opacity:(2-ratio)/2 }
})}
>
<Component route={route} navigator={navigator}/>
</Drawer>
)
}
我试图在抽屉内移动导航器,但我丢失了导航器的引用,它对我不起作用
你可以调用一个返回导航器函数的函数,如下所示:
getNav()
{
return this._navigator
}
//内部渲染场景
renderscene(route,navigator)
{
this._navigator = navigator
}
在传递导航器引用时调用 getNav 函数。
干杯:)
将其与 renderScene 绑定
renderScene={this.renderScene.bind(this)}