我如何定义React天然中的全局变量



问题我正在创建一个具有React Native和Firebase的应用程序。我使用两个选项卡,我想将键从一个选项卡中传递到另一个选项卡(使用 tabNavigator/ reactNavigation用于选项卡)。我不知道如何定义全局变量。我做了一些重新审查,发现我需要使用某种.global命令。我尝试使用:

var passKey = '';
global.passKey = key; //defined before any screens

何时不起作用:

this.global.setState({ passKey: item.key }) //defined in button in a flatlist

语句this.global.setState({})给了我一个错误,global.passKey可能会在全球保存变量,但是当我更改屏幕内部的变量时,一个变量不会传递到另一个屏幕。我真的很乐意一些帮助获得解决方案,以在两个选项卡之间传递变量。谢谢你!

它以这种方式工作:

global.js

export default {};

用法

import global from './global';
global.passKey = 123;

尽管您选择了接受答案,但我相信这是您需要的。

好吧,如果它只是一个不会随时间变化的静态变量,请创建项目中某个地方的constants.js文件并执行export const MY_VARIABLE = 'theValue'。之后,您可以将其导入需要它的文件-import { MY_VARIABLE } from './constants'

如果要在两个选项卡中获取变量,则必须使用redux。但是,如果您不使用它,则当您首次开始在此处检查文档时,它可能会有些复杂。

相关内容

  • 没有找到相关文章

最新更新