Redux 与传统 MVC
Redux vs. Traditional MVC
在常规 MVC 中,在模型上使用 "getter" 方法来计算通常派生的数据是一种常见模式。例如:
class User {
var firstName;
var lastName;
getFullName() {
return firstName + " " + lastName;
}
}
假设服务器 JSON 响应是 {'firstName': "Bob", 'lastName': "Smith"}.
在常规的 Flux 中,您可以将这样的方法 (getFullName()) 放在您的商店中(例如,Alt 通过允许您在您的商店中使用 "exportPublicMethods" 来解决这个问题)。
在 Redux 中,我不确定 "getFullName()" 方法将存在于何处,考虑到鼓励在您的状态中使用常规 javascript 对象(即在我的示例中,只有 firstName 和 lastName 会被存储,没有简单的方法来生成派生的全名)。
完成此任务的最佳/最简单方法是什么?
谢谢!
在 documentation, a concept called a "selector" is used to map raw API data to the representation desired in the view. This is specifically for use with react-redux 中,但您当然可以对任何给定的视图层使用相同的技术。
在常规 MVC 中,在模型上使用 "getter" 方法来计算通常派生的数据是一种常见模式。例如:
class User {
var firstName;
var lastName;
getFullName() {
return firstName + " " + lastName;
}
}
假设服务器 JSON 响应是 {'firstName': "Bob", 'lastName': "Smith"}.
在常规的 Flux 中,您可以将这样的方法 (getFullName()) 放在您的商店中(例如,Alt 通过允许您在您的商店中使用 "exportPublicMethods" 来解决这个问题)。
在 Redux 中,我不确定 "getFullName()" 方法将存在于何处,考虑到鼓励在您的状态中使用常规 javascript 对象(即在我的示例中,只有 firstName 和 lastName 会被存储,没有简单的方法来生成派生的全名)。
完成此任务的最佳/最简单方法是什么?
谢谢!
在 documentation, a concept called a "selector" is used to map raw API data to the representation desired in the view. This is specifically for use with react-redux 中,但您当然可以对任何给定的视图层使用相同的技术。