From 66d8eb41c21aa7556465605e6f62855fbd7730b3 Mon Sep 17 00:00:00 2001 From: trust2065 Date: Mon, 5 Mar 2018 23:32:05 +0800 Subject: [PATCH] Update react-redux-real-world-example.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.修改todoReducer, uiReducer檔案路徑,使其和參考的檔案相符 ex: 在todoReducers.js 中 import ui from './ui/uiReducers'; //會找不到檔案 2. 增加src/reducer/index.js說明 --- Ch07/react-redux-real-world-example.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Ch07/react-redux-real-world-example.md b/Ch07/react-redux-real-world-example.md index 2b7c3b2..4fabb8a 100644 --- a/Ch07/react-redux-real-world-example.md +++ b/Ch07/react-redux-real-world-example.md @@ -155,6 +155,7 @@ export const TodoState = Immutable.fromJS({ 接下來我們要討論的是 Reducers 的部份,在 `todoReducers` 中我們會根據接收到的 action 進行 mapping 到對應的處理函式並傳入夾帶的 `payload` 資料(這邊我們使用 [redux-actions](https://github.com/acdlite/redux-actions) 來進行 mapping,使用上比傳統的 switch 更為簡潔)。Reducers 接收到 action 的處理方式為 `(initialState, action) => newState`,最終會回傳一個新的 state,而非更改原來的 state,所以這邊我們使用 `ImmutableJS`。 +以下是 `src/reducers/data/todoReducers.js` ```javascript import { handleActions } from 'redux-actions'; import { TodoState } from '../../constants/models'; @@ -180,7 +181,7 @@ import { export default todoReducers; ``` - +以下是 `src/reducers/ui/uiReducers.js` ```javascript import { handleActions } from 'redux-actions'; import UiState from '../../constants/models'; @@ -196,6 +197,7 @@ export default handleActions({ 由於 Redux 官方也沒有特別明確或嚴謹的規範。在一般情況我會將 reducers 分為 `data` 和單純和 UI 有關的 `ui` state。但由於這邊是比較簡單的例子,我們最終只使用到 `src/reducers/data/todoReducers.js`。 +以下是 `src/reducers/index.js` ```javascript import { combineReducers } from 'redux-immutable'; import ui from './ui/uiReducers';// import routes from './routes';