首页 > 解决方案 > 在 React 中声明静态数据的最佳位置/方式

问题描述

我正在通过互联网阅读,试图找到一些性能坚决或首选的方法来声明静态数据、反应中的变量,所以我想听听你的意见。

这适用于反应无状态和类组件。

假设我有一个颜色数组,我想在 React 的某个地方使用它return()

const colors = ["red, "green", "blue"];

1)在里面声明render()

我想这不是首选,因为它将在每次渲染时重新创建。

2)在构造函数中将其声明为全局变量

this.colors = ["red, "green", "blue"];

很好,但在某些情况下可能不喜欢拥有全局变量。

3) 将其声明为放置在 React 组件内部但在render(). 我们从 React 中调用函数return()

4)我想我在某个地方看到了使用 defaultProps。

有最佳实践吗?

标签: reactjsclassvariablesrender

解决方案


很少有常见的方法是

在导入后在类上方或文件开头声明它

如果它是一个文件特定的常量。

const CONST1 = [0,1,2,];

class xxx extends yy {
 ....
}

或者您可以将其保存在单独的文件中,并在许多地方通用时将其导入。

就像是

一个json文件

文件 a.json

{
 "color": "red"
}

用法 b.js

 import constant from 'constants/a.json';

 console.log(constant.color);

甚至global.color = 'red'我不建议使用


推荐阅读