我来自 material-ui 的 TextFields 。在值更改时,我将值分配给 model.data 。 模型是mobx FormStore 。在控制台中,您可以看到值更改,但输入字段在我键入时没有任何字符。为什么即使model.data发生更改, TextField的属性值也不会更改?
答案 0 :(得分:1)
在创建可观察对象后,将属性添加到observable对象将不会使添加的属性可观察。您需要使用extendObservable()
而不是直接将新属性分配给可观察对象。另一种解决方案是使用可观察的地图。请注意,如果在循环中呈现组件,则不会拾取通过extendObservable()
添加的属性。
extendObservable(model.data, {[e.target.name]: e.target.value})
答案 1 :(得分:0)
想出来。
extendObservable(model.data, {
name: '',
lastName: '',
phone: '',
skype: '',
slack: '',
linkedIn: '',
});
似乎可以工作,因为可观察对象中的属性是不可观察的。您需要使用extendObservable。