Я не могу изменить избыточное состояние, если оно не предопределено в исходном состоянии.Это мое начальное состояние
var InitialState = Record({
....
mode: null
data:[]
})
Когда есть json с сервера, он будет в data
.
Данные будут содержать как id, закладку, имя и т. Д.
Я могу получить доступ к данным с сервера this.props.search.data.bookmark
, но я не могу обновить их, я думаю, что они не могут найти bookmark
состояние.Я могу обновить состояние mode
, так как оно находится в исходном состоянии.
Пример данных в json
{id:1 ,Bookmark:true},
{id:2 ,Bookmark:true},
.....
Короче говоря, я пытался сделать это Это работает
console.log(state.getIn(['search', 'mode]))
Но это не работает, (не определено)
console.log(state.getIn(['search', 'data', 'bookmark']))
Если я добавлю fromJS
к полезной нагрузке редуктора при задании данных, я смогу получить к ним доступ
case SET_DATA:
return state.set('data', fromJS(action.payload))
Теперь эта работа
console.log(state.getIn(['search', 'data', 'bookmark']))
но в моих контейнерах я получил ошибку
TypeError: TypeError: TypeError: TypeError: undefined не является объектом (оценивая 'this.props.search.data.map')
Я не могу использовать карту для зацикливания.
Как правильно это сделать?