Cha*_*hoi 5 javascript reactjs react-native
我使用React Native 0.16(Android)时遇到了麻烦.问题是如何将props传递给属于组件的Navigator.NavigationBar的routeMapper.<Navigator />
我的代码结构如下
class MyApp extends Component {
...
static NavigationBarRouteMapper = {
LeftButton(route, navigator, index, navState) {
// ### I want to call 'functionABC' here. What Should I do?
},
RightButton(route, navigator, index, navState) {
// ### I want to call 'functionABC' here. What Should I do?
},
Title(route, navigator, index, navState) {
// ### I want to call 'functionABC' here. What Should I do?
},
}
...
functionABC() {
...
}
...
render() {
return (
<View>
<Navigator
initialRoute={{
name: 'Main',
index: 0,
}}
renderScene={this.renderScene.bind(this)}
sceneStyle={{marginTop:50}}
navigationBar={
<Navigator.NavigationBar
routeMapper={MyApp.NavigationBarRouteMapper}
/>
}
ref="nav" />
</View>
);
}
Run Code Online (Sandbox Code Playgroud)
gre*_*gre 10
您可以在每次使用函数时生成映射器对象,在您的代码中,这可能只是:
class MyApp extends Component {
...
static NavigationBarRouteMapper = props => ({
LeftButton(route, navigator, index, navState) {
},
RightButton(route, navigator, index, navState) {
},
Title(route, navigator, index, navState) {
},
})
render() {
return (
<View>
<Navigator
initialRoute={{
name: 'Main',
index: 0,
}}
renderScene={this.renderScene.bind(this)}
sceneStyle={{marginTop:50}}
navigationBar={
<Navigator.NavigationBar
routeMapper={MyApp.NavigationBarRouteMapper(this.props)}
/>
}
ref="nav" />
</View>
);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2164 次 |
| 最近记录: |