猿问

怎么去理解mobx的 @computed @autorun 我有点琢磨不透麻烦各位指点一下

怎么去理解mobx的 @computed @autorun 我有点琢磨不透麻烦各位指点一下

拉风的咖菲猫
浏览 459回答 1
1回答

动漫人物

@computed 是为了优化代码逻辑。比如 component 中需要展示 price 以及 total 两个信息。不使用@computed的话,需要这么写。@observable count;handleCountAdd() {    this.count += 1;    this.setState({ total: this.count * this.props.price });}假如使用了 @computed,就可以写成@observable count;@computed get total() {    return this.count * this.props.price;}handleCountAdd() {    this.count += 1;}第二种方法明显优于第一种,因为 total 其实相当于是根据 price 和 count 得到的,虽然它同样控制着展示,但是作为 state 会显得有些冗余。@autorun 的使用频次太少,我也没有找到很好的 case 来解释...
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答