如何在Mobx中执行可观察函数
How to do an observable function in Mobx?
我存储了一个集合,我希望它是只读的。我想做一些类似的事情,但我不知道Mobx是否提供了一种创建反应函数的方法。
class Store{
private _col:Mobx.Map;
...
@observable public has(id){
return _col.has(id);
}
}
我在一个没有信任客户的游戏架构中。因此,我不希望我的视图直接访问_col
。
@observe
class MyView extends Component {
...
componentWillMount(){
this.id = this.props.params.id;
autorun(()=>{
this.props.store.has(this.id)
//do something smart
}
}
...
}
有什么替代方案?
您只需使用
public has(id){return _col.has(id);}
对于可观察性,无论是直接访问还是通过几层间接访问,MobX都会跟踪它。
相关文章:
- 为什么prototypjs观察到回调函数有绑定
- 如何在Mobx中执行可观察函数
- 在ko.applyBindings(..)中执行Knockout js订阅函数(用于可观察对象)
- Angular2/Typescript:从链接可观察函数访问实例变量
- angularjs如何为函数设置观察程序
- Javascript 错误: $(..).观察不是一个函数
- 自定义绑定到可观察数组,不调用更新函数
- 原型js观察函数抛出错误
- 从挖空可观察数组中调用函数
- Angular2 可观察 - 等待多个函数调用,然后再继续
- Rxjs 包装来自 D3 的其他库函数(可观察)
- 将通过原型计算的可观察对象添加到构造函数中
- 修改可观察数组时如何触发函数
- 重新调用返回 Rxjs 可观察的函数
- 如何将操作函数添加到从可观察量订阅返回的一次性
- 可观察到的敲除不是一个函数
- 试图转换/映射我的JSON数组中的对象到我的KO可观察函数
- 在AngularJS指令中观察函数的值
- 的可观察函数返回了一个分块数组
- 如何在 JavaScript 中观察函数返回值