聚合物飞镖@observable不同的行为



在下面的聚合物飞镖代码中:

@observable Map hisMap = toObservable(new Map());    // Line 1
@observable String hisString = '';                   // Line 2

为什么1号线需要toObservable而2号线不需要?

1 行

如果不使用toObservable则只会识别对hisMap所做的更改。例如,当您将另一个地图分配给hisMap但不更改地图中的值时。通过toObservable,地图的内容也会被观察,添加、删除、替换地图中的项目会产生更改事件。

2号线

更改此值的唯一方法是将另一个字符串分配给 hisString 。字符串是不可变的,映射不是。

最新更新