我一直在想方法,我可以維護所有我的減速器執行的所有操作字符串的日誌。首先,這個函數可以打破redux的只讀狀態是有意義的,因爲這個日誌將活在應用程序之外,不應該用於狀態反轉。我認爲服務是理想的,因爲它們是可注入和單身的。我將如何去注入一個服務到我的reducer或以某種方式將操作字符串保存到數組?Angular 2 @ ngrx/redux存儲所有字符串(操作)來創建日誌
下面是我的導航示例簡化器:我如何將一個服務注入到此?
import * as Layout from '../_actions/layout.actions';
export interface State
{
sideNavVisualState: boolean;
sideNavWidthPx: number;
sideNavMarginLeftPx: number;
}
const initialState: State = {
sideNavVisualState: false,
sideNavMarginLeftPx: 0,
sideNavWidthPx: 0
};
export function reducer(state = initialState, action: Layout.Actions): State
{
switch (action.type)
{
case Layout.OPEN_NAV:
return {
sideNavVisualState: true,
sideNavWidthPx: 250,
sideNavMarginLeftPx: 250
} as State;
case Layout.CLOSE_NAV:
return {
sideNavVisualState: false,
sideNavWidthPx: 0,
sideNavMarginLeftPx: 0
} as State;
default:
return state;
}
}
export const getSideNav = (state: State) => state;
我從來沒有使用過的效果,而且在如何使用Redux方面我還是比較新的。你能展示一個非常基本的例子嗎? –
幾個月前我一直處於同樣的狀況。用nrgx概念我完全失去了。對我最有幫助的是全面的解釋。出於這個原因,我不會發布任何代碼,你會在網上找到大量的例子。相反,我會嘗試對整體情況作更多解釋。希望它會有所幫助。 (我已經更新了我的答案) –