1
我正在使用react-boilerplate构建一个应用程序,人们可以在其中创建和编辑事件。这个样板使用immutable.js,所以我想学习它。在对象数组上推一个对象将返回数组大小
当我将事件保存到数据库时,数据库将该事件作为对象返回。
console.log(action.payload.event)
将打印
{
color:"#000000",
name:"my Event",
_id:"59ea882a58a83d20d400cd21",
}
这个对象,然后我要推到其他事件的数组。当用户登录。
我减速看起来像这样
import { fromJS } from 'immutable';
import { ADD_EVENT_REQUEST_SUCCESS } from './constants';
const initialState = fromJS({
events: null
});
function eventsOverviewReducer(state = initialState, action) {
switch (action.type) {
case ADD_EVENT_REQUEST_SUCCESS:
return state
.update('events', list => list.push(action.payload.event));
case LOGIN_SUCCESS:
const user = action.payload.user;
return state
.set('events', user.events)
default:
return state;
}
}
但是这个更新语句现在设置在商店的事件数组的大小事件得到填充。我如何将我的对象推向状态?
那么'.push()'方法返回新的数组长度,因为这是它应该做的。我不使用Redux,但我猜可能是'list => {list.push(action.payload.event);返回列表}'更接近你想要的? – nnnnnn