原因:mobx中文网 https://cn.mobx.js.org/best/react.html
错误的: “使用” observable 但没有访问它的任何属性
autorun(() => { message.likes; }) message.likes.push("Jennifer");这将不会作出反应。只是因为
likes
数组本身并没有被autorun
使用,只是引用了数组。 所以相比之下,messages.likes = ["Jennifer"]
是会作出反应的,表达式没有修改数组,而是修改了likes
属性本身。
解决方法:
使用lodash的concat 方法
autorun(() => {
message.likes;
})
message.likes = _.concat(message.likes,"Jennifer")