React Native在另一个js文件中设置变量

f2uvfpb9  于 2023-10-22  发布在  React
关注(0)|答案(1)|浏览(129)

我得到了一个全局样式的js文件,它带有一个布尔值来控制我是使用lightmode还是darkmode。我如何通过一个不同的js文件中的按钮来设置这个布尔值?
如何在StylingVars.js文件中将StylingVars.darkmode设置为true(或false)?

ProfileScreen = () => {
  const [darkmode, setDarkmode] = useState(StylingVars.darkmode);
  const ToggleDarkmode = () => {
    setDarkmode(!darkmode);
  }
  useEffect( () => {
    console.log(darkmode)
  }, [darkmode]);

  return (
    <View style={{flex: 1, backgroundColor: StylingVars.darkmode === false ? StylingVars.lightmodeBackground : StylingVars.darkmodeBackground}}>
      <StatusBar style={StylingVars.darkmode === false ? 'dark' : 'light'}/>
      <Button title='DarkMode' onPress={() => {
        ToggleDarkmode()
      }}/>
    </View>
  );
}

这是我目前拥有的,但useState不会覆盖其他文件中的布尔值,而是创建一个具有初始值的新var(如果我没有错的话)。

iqih9akk

iqih9akk1#

你可能想使用状态管理库-你可能听说过Redux或Mobx。我推荐祖斯坦德来管理国家。

相关问题