1

在被监视的定义中调用.binda会导致奇怪的行为。新绑定仅在初始化时更新一次,但在更新内容后不会更新。VarsBindingVars

例如,如果我这样做:

private val test: Vars[Int] = Vars(1,2,3,4)
Binding(test.bind match{case newd => println("TESTS DATAS has changed: " + newd)}).watch
test.value.append(1111)

然后,我得到了一条输出线(而我应该得到两条):

测试数据已更改:缓冲区(1、2、3、4)

有关完整的工作示例,请参阅此 scalafiddle: https ://scalafiddle.io/sf/0PkkLPE/1

我尝试了不同的选择,例如转换为Binding第一个 with ,.all但这并没有改变任何东西。也许,我不理解某些东西,Vars但这看起来不太符合Var它的效果。

4

0 回答 0