试图将值作为导航参数传递,但无法在另一个组件中获取参数

问题描述 投票:0回答:1

[我正在尝试在我的应用程序上实现i18n,我设置了一个名为SettingsScreen.js的文件,此文件有很多用于更改语言的按钮(请参见下面的示例),另一个名为HomeScreen.js的文件,此文件本来应该通过SettingsScreen.js传递参数并更改应用程序的语言,但我遇到了此错误:

enter image description here

所以我将在下面发布其余代码:

HomeScreen.js:] >>

export default function HomeScreen({ route, navigation }) {
  let { lang } = route.params;

  i18n.locale = lang;

  <Rest of the content/>
}

SettingsScreen.js:

] >>
export default function SettingsScreen({ navigation }) {
  let setPortuguese = () => {
    navigation.navigate("Dashboard", { 
      screen: "HomeScreen", 
      params: { lang: "pt" } 
    })

    <Rest of the content />
  }
}

app.js:

export default function App() {

  return (
    <NavigationContainer>
      <Drawer.Navigator>
        <Drawer.Screen name="Dashboard" component={Dashboard} />
        <Drawer.Screen name="Settings" component={SettingsScreen} />
      </Drawer.Navigator>
    </NavigationContainer>
  );
}

我正在尝试在我的应用程序上实现i18n,我设置了一个名为SettingsScreen.js的文件,此文件有很多用于更改语言的按钮(请参见下面的示例),另一个名为HomeScreen.js的文件this。 ..

javascript reactjs react-native react-navigation
1个回答
0
投票

问题正在调用navigation.navigate传递错误参数。

尝试此代码:

© www.soinside.com 2019 - 2024. All rights reserved.