重新创建应用容器以更改设置是否可以?

时间:2019-02-15 09:04:53

标签: react-native react-navigation

目标:为使用react-navigation的应用实现主题(或任何全局设置)。

问题:

  • 我有多个屏幕,这些屏幕由TabNavigator启动的createBottomTabNavigator管理。

  • 其中一个屏幕是SettingsScreen。当用户选择一个新主题时,我的整个应用程序都需要重新着色,包括TabNavigator。我将updateSetting函数作为screenProp传递给SettingsScreen触发更改。

  • 在更改时,我重新创建TabNavigator,然后将其用于重新创建AppContainer,因为颜色是在初始化时指定的(第41行)。

此方法有效吗?我不知道对性能的影响,也不清楚是否有更简单的方法。

App structure

注意:我不想使用外部库。

0 个答案:

没有答案