Redux 操作类型为"new String()"对象



Redux动作中,需要创建很多动作类型。许多操作可能集中在一个主题上,因此可能希望使用基于主题的前缀(如RECEIVE_SUBJECT_RELATIVES(保持命名约定。这意味着很多长字符串。

我有一个想法让它更容易:

subjectActions = {relatives: new String("RELATIVES), children: new String("CHILDREN")}    
anotherSubjectActions = {relatives: new String("RELATIVES), children: new String("CHILDREN")}    

然后在reducer中可以写

switch (action.type) {    
case (subjectActions.relatives)    
case (anotherSubjectActions.relatives)  

这是可能的,因为subjectActions.relatives===anotherSubjectActions.relatives

问题:有意义吗?它有什么重大缺陷吗?

谢谢!

不,您应该在此处比较字符串类型,而不是将它们视为对象。 不知道为什么首先要将它们视为对象。

其次,您应该专门使用我们新的官方 Redux 工具包包。 特别是,createSliceAPI 消除了手动编写操作类型或操作创建者的需要。

相关内容

最新更新