【发布时间】:2020-05-14 06:53:42
【问题描述】:
我有以下代码:
如果_isFavorite 变量是public observable,它工作正常。但是一旦我将其更改为@computed,它只会触发一次。但进一步的@action 调用不会触发@computed。
一旦isFarovite 被更改,这工作正常:
class Cat {
@observable public isFavorite = false;
constructor() { ... }
@action public toggleFavorite() {
this.isFavorite = !this.isFavorite;
}
}
如果 _isFavorite 被更改,这将不起作用:
class Cat {
private _isFavorite = false;
constructor() { ... }
@computed public get isFavorite() {
return this._isFavorite;
}
@action public toggleFavorite() {
this._isFavorite = !this._isFavorite;
}
}
我想我可能会错过“计算”如何工作的核心概念,但我不知道应该如何更改我的代码...
【问题讨论】:
标签: reactjs mobx mobx-react