1
設定されていないブール型変数を除き、Reduxリデューサが動作します。コード:Redux Reducerはブール型オブジェクトプロパティを設定しません
const GameBoardReducer = function(state, action) {
if(state === undefined) {
let state = {
rows: BOARD_ROWS,
cols: BOARD_COLS,
width: Math.min(document.body.clientWidth * 0.9, 1184),
board: [],
running: false,
framesPerSec: 5,
}
for(var i=0 ; i<BOARD_ROWS ; i++) {
state.board.push([]);
for(var j=0 ; j<BOARD_COLS ; j++) {
state.board[i].push(Math.random()<0.15? FIELD_ALIVE: FIELD_DEAD);
}
}
return state;
}
switch(action.type) {
case SET_BOARD_ACTION:
return { ...state, board: action.payload };
case RUN_ACTION:
console.log("RunAction:", action.payload);
return { ...state, running: action.payload };
}
return state;
}
コンソールが
runAction関数を示しています。本当の
をしかし、コンテナ内の値:this.props.gameBoard.running
はまだfalseです。
なぜですか?
フルペン:あなたのペンでhttp://codepen.io/lafisrap/pen/yMZyXw
ライフゲームが実行中で停止する必要がありますか? – Michael