Redux “使用”一词;“类型”;在重复操作中

Redux “使用”一词;“类型”;在重复操作中,redux,naming-conventions,naming,redux-actions,Redux,Naming Conventions,Naming,Redux Actions,我最近正在尝试将Redux与React Native一起使用。据我所知,“type”一词受Redux的限制,也就是说,如果我的属性中有一个属性,它就不能一起工作 { type: 'MODIFY_USER', gender: 'male', type: 'normal_user', // <= this is the type of the user specified to modify, } { 键入:“修改用户”, 性别:'男性', 键入:“normal_user”,/

我最近正在尝试将Redux与React Native一起使用。据我所知,“type”一词受Redux的限制,也就是说,如果我的属性中有一个属性,它就不能一起工作

{ 
  type: 'MODIFY_USER',
  gender: 'male',
  type: 'normal_user', // <= this is the type of the user specified to modify,
}
{
键入:“修改用户”,
性别:'男性',

键入:“normal_user”,//您能否构建一个适配器,用于获取建模数据并使其适应API

例如,假设您拥有原始代码库。一旦您对数据建模,然后将其通过适配器传递

您可以将新的
类型
,例如
用户类型
映射到原始类型

例如:

传入: 组件>适配器>重复使用

传出:Redux>适配器>组件

使用适配器,您不必更改代码以适应其他API。例如,如果您想将用户数据传递到Facebook,您可以在应用程序中创建Facebook适配器


我认为适配器的好处在于,您永远不会更改代码以适应各种API,您只需要创建适配器(这会创建更简单的流,而不是在当前应用程序中操作数据)

您能否构建一个适配器,以获取建模数据并将其适应API

例如,假设您拥有原始代码库。一旦您对数据建模,然后将其通过适配器传递

您可以将新的
类型
,例如
用户类型
映射到原始类型

例如:

传入: 组件>适配器>重复使用

传出:Redux>适配器>组件

使用适配器,您不必更改代码以适应其他API。例如,如果您想将用户数据传递到Facebook,您可以在应用程序中创建Facebook适配器

我认为适配器的好处在于,您永远不会更改代码以适应各种API,您只需创建适配器(这会创建更简单的流,而不是在当前应用程序中操作数据)

您可以采用“有效负载”方法:

{ 
  type: 'MODIFY_USER',
  payload: {
    gender: 'male',
    type: 'normal_user', // <= this is the type of the user specified to modify,
  }
}
{
键入:“修改用户”,
有效载荷:{
性别:'男性',
键入:“普通用户”,您可以采用“有效载荷”方法:

{ 
  type: 'MODIFY_USER',
  payload: {
    gender: 'male',
    type: 'normal_user', // <= this is the type of the user specified to modify,
  }
}
{
键入:“修改用户”,
有效载荷:{
性别:'男性',

键入:'normal_user',//感谢您的即时回复!我一定会尝试使用适配器。因为我喜欢使用约定,所以动作生成器的属性似乎像函数的“参数”或动作一样工作。但是出于某种原因,“type”一词被用作一个关键字,这在某种程度上禁止我使用这个通用词作为数据模型的属性名。只是想知道“添加另一个采用者层”是否是解决这些问题的最佳方法,因为“类型”这个词非常常见。我可以看到您来自何处-但是“类型”是一个非常模糊的术语-是否应该将其作为没有上下文的对象传递?我宁愿传递一个具有属性“类型”的用户数据模型。这意味着您的操作具有
类型
数据
,感谢您的即时回复!我一定会y来使用适配器。由于我喜欢使用约定,action builder的属性似乎像函数的“参数”或动作一样工作。但出于某种原因,“类型”一词被用作关键字,这在某种程度上禁止我使用这个通用词作为数据模型的属性名称。我只是想知道“添加另一个采纳者层”是否是解决这些问题的最佳方法,因为“类型"我可以看出你来自何处,但“类型”是一个非常模糊的术语,应该作为没有上下文的对象传递吗?我更愿意传递一个用户数据模型,它有一个属性“类型”。这意味着你的操作有
类型
数据
@Ziac-我对这个答案投了更高的票,因为这似乎是正确的更适合的方法-也许更适合你的需要。谢谢,这是一个很好的提示:)@Ziac-我已经对这个答案投了更高的票,因为这似乎更适合的方法-也许更适合你的需要。谢谢,这是一个很好的提示:)