如何在ngrx中注入初始状态
How to inject inital state in ngrx
我正在 Angular 4 应用程序中实施 ngrx 状态管理。一切顺利,直到我尝试 "hydrate" 应用程序状态与之前保存在浏览器本地存储中的状态。
我对 ngrx/store
文档的 Initial State and Ahead of Time Compilation section 有疑问。具体来说,以下行是什么意思,我将如何设置 ("dynamically injecting at run-time") initialStateFromSomewhere
到从浏览器本地存储检索的状态?
/// Pretend this is dynamically injected at runtime
const initialStateFromSomewhere = { counter: 3 };
在创建减速器时,您需要为商店提供初始状态。
假设您有 FeatureState
interface FeatureState {
counter: number;
}
现在在你的 reducer 中你需要创建 initialState
const initialState: FeatureState = {
count : 0;
}
这个初始状态将提供给 reducer
中的状态
export function reducer(state: FeatureState = initialState, action: Action): State {
现在,如果您想动态添加 initialState
,您可以从商店中检索 initialState
并将其传递到 reducer
我正在 Angular 4 应用程序中实施 ngrx 状态管理。一切顺利,直到我尝试 "hydrate" 应用程序状态与之前保存在浏览器本地存储中的状态。
我对 ngrx/store
文档的 Initial State and Ahead of Time Compilation section 有疑问。具体来说,以下行是什么意思,我将如何设置 ("dynamically injecting at run-time") initialStateFromSomewhere
到从浏览器本地存储检索的状态?
/// Pretend this is dynamically injected at runtime
const initialStateFromSomewhere = { counter: 3 };
在创建减速器时,您需要为商店提供初始状态。
假设您有 FeatureState
interface FeatureState {
counter: number;
}
现在在你的 reducer 中你需要创建 initialState
const initialState: FeatureState = {
count : 0;
}
这个初始状态将提供给 reducer
export function reducer(state: FeatureState = initialState, action: Action): State {
现在,如果您想动态添加 initialState
,您可以从商店中检索 initialState
并将其传递到 reducer