Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我们将ActionType声明为常量,而不是将其用作字符串?_Javascript_Reactjs_Redux - Fatal编程技术网

Javascript 为什么我们将ActionType声明为常量,而不是将其用作字符串?

Javascript 为什么我们将ActionType声明为常量,而不是将其用作字符串?,javascript,reactjs,redux,Javascript,Reactjs,Redux,我有时会使用React、redux,并且我曾经将redux操作类型声明为常量,因为我知道这是一个很好的实践 ex-const REQUEST\u USERS='REQUEST\u USERS' 有人能解释一下将ActionType声明为常量和直接将其用作字符串之间的区别吗?这就像在项目中引入函数一样。为什么要使用函数?以减少反复重写代码 类似地,如果要重用动作类型,最好将其存储在常量中并使用该常量。通过这种方式,您不容易出现任何打字错误等,而在多个位置使用它这就像在项目中引入功能一样。为什么要使

我有时会使用React、redux,并且我曾经将redux操作类型声明为常量,因为我知道这是一个很好的实践
ex-
const REQUEST\u USERS='REQUEST\u USERS'


有人能解释一下将ActionType声明为常量和直接将其用作字符串之间的区别吗?

这就像在项目中引入函数一样。为什么要使用函数?以减少反复重写代码


类似地,如果要重用动作类型,最好将其存储在常量中并使用该常量。通过这种方式,您不容易出现任何打字错误等,而在多个位置使用它

这就像在项目中引入功能一样。为什么要使用函数?以减少反复重写代码


类似地,如果要重用动作类型,最好将其存储在常量中并使用该常量。这样,您就不容易出现任何打字错误等,而在多个位置使用它

实际上,在现代Redux中,建议您也不要这样做。虽然它在内部仍然是这样工作的,但是动作类型成为了一个实现细节,作为一个程序员,您再也不会触及它了


我建议您仔细阅读并遵循最新的最佳实践。

实际上,在现代Redux中,建议您也不要这样做。虽然它在内部仍然是这样工作的,但是动作类型成为了一个实现细节,作为一个程序员,您再也不会触及它了


我建议您仔细阅读并遵循最新的最佳实践。

我们将其声明为常量,因为,比方说,如果您选择直接编写字符串,我们不必在20个不同的位置重命名它们想象您在20个文件中使用字符串值
AB
,经过一段时间后,您想将字符串的值更改为
BA
,如果只声明一次并将其导出,那么您只能在单个文件中更改它,但是如果它直接用作字符串值,那么您必须转到其他所有这20个文件并逐个更改。主要是为了简化重构(即重命名操作时)为了让ide/linter/typechecker指出拼写错误,我们将其声明为常量,因为,比方说,如果我们选择直接编写字符串,我们不必在20个不同的位置重命名它们。想象一下,您在20个文件中使用了字符串值
AB
,经过一段时间后,您想将字符串的值更改为
BA
,如果只声明一次并将其导出,那么您只能在单个文件中更改它,但是如果它直接用作字符串值,那么您必须转到其他所有这20个文件并逐个更改。主要是为了简化重构(即重命名操作时)让ide/linter/typechecker指出拼写错误。