在下面的聚合物飞镖代码中:
@observable Map hisMap = toObservable(new Map()); // Line 1
@observable String hisString = ''; // Line 2
为什么1号线需要toObservable
而2号线不需要?
第
1 行
如果不使用toObservable
则只会识别对hisMap
所做的更改。例如,当您将另一个地图分配给hisMap
但不更改地图中的值时。通过toObservable
,地图的内容也会被观察,添加、删除、替换地图中的项目会产生更改事件。
2号线
更改此值的唯一方法是将另一个字符串分配给 hisString
。字符串是不可变的,映射不是。