我正在尝试开发一个规模较大、可扩展的应用程序,并被告知最佳实践是使用单一存储来存储整个应用程序的当前全局状态(包括瞬态/重新加载删除和会话持久数据),即使它分成多个模块。
现在我想知道为什么ngrx/store示例应用在 ngrx/store 网站上使用多个存储;每个 reducer 都有自己的代码片段,如下所示:
所以为什么官方指南不像大多数人建议的那样使用单一存储?或者只要所有减速器都属于一个模块,它就被视为单一存储了吗?如果不是,我该如何实现一个单一的中央存储?我的想法是使用Store通用类型并将其变体放入表格中。另一个选项是拥有一个单一的JS对象,您可以使用reducer-actions更新其属性。无论哪种方式,您都必须在表格或对象中有一些结构。有没有关于此的最佳实践?您知道更好的示例应用程序吗?
现在我想知道为什么ngrx/store示例应用在 ngrx/store 网站上使用多个存储;每个 reducer 都有自己的代码片段,如下所示:
export interface State {
ids: string[];
entities: { [id: string]: Book };
selectedBookId: string | null;
};
export const initialState: State = {
ids: [],
entities: {},
selectedBookId: null,
};
所以为什么官方指南不像大多数人建议的那样使用单一存储?或者只要所有减速器都属于一个模块,它就被视为单一存储了吗?如果不是,我该如何实现一个单一的中央存储?我的想法是使用Store通用类型并将其变体放入表格中。另一个选项是拥有一个单一的JS对象,您可以使用reducer-actions更新其属性。无论哪种方式,您都必须在表格或对象中有一些结构。有没有关于此的最佳实践?您知道更好的示例应用程序吗?
src/app/reducers/index.ts
文件。 - yurzui