У меня есть следующий код в компоненте:immutable.js & react.js SetState очищает прототип объекта
constructor() {
this.state = Immutable.fromJS({
user : {
wasChanged : false,
firstName : false,
lastName : false,
address : {
street : false,
}
}
});
}
onEdit({target: {dataset: {target}}}, value) {
this.setState(function (prevState) {
return prevState.setIn(['user', target], value);
});
}
render() {
var user = this.state.get('user').toJS();
...
}
Проблема заключается в том, что, когда я пытаюсь обновить значение в onEdit Я вижу, что prevState имеет разные прототипы. Я не понимаю, почему и что я делаю неправильно. Я вижу это в консоли
> Object.getPrototypeOf(this.state)
src_Map__Map {@@[email protected]@: true}
> Object.getPrototypeOf(prevState)
Object {}
После того, как состояние изменилось оно переходит к визуализации, где она, конечно, не может найти получить функцию или что-нибудь из непреложных
Использование реагируют с аддонами 0.13.3.
Это потому, что она должна быть простой объект с ключами и не фантазии Неизменное? –
Любая конкретная причина, по которой вы хотите использовать 'immutable'? –