我正在尝试使用createMaterialTopTabNavigator在React Native应用程序中创建一个标签导航器,但是我需要由要保存在redux中的变量定义标签的数量。我不知道会有多少选项卡,因为用户定义了。 redux变量是一个数组,因此每个数组对象应为一个选项卡。我该怎么办?
现在知道我的组件中有两个选项卡,下面是代码。正如我所说,我需要更改它以使其依赖于redux变量(该数组中的每个对象都有一些必须传递给子组件的信息)。
非常感谢你们!
const ProfileNavigator = createMaterialTopTabNavigator({
Screen1: {
screen: props => <ScreenHolder screenProps={props.screenProps} />,
navigationOptions: {title: "Screen1"}
},
Screen2: {
screen: props => <ScreenHolder screenProps={props.screenProps}/>,
navigationOptions: {title: "Screen2"}
}
},{
tabBarPosition: 'top',
swipeEnabled: true,
animationEnabled: true,
})
export default createAppContainer(ProfileNavigator);
答案 0 :(得分:0)
您可以使用redux状态将存储导入到标签导航器文件中:
import { store } from './src/store/index'
然后您可以使用:
store.getState();
尽管我这样说,但我经常发现自己避免在react组件生命周期之外使用store,甚至不使用props或随时间变化直接定义导航参数。
我虽然使用导航setParams。