小编qtu*_*uan的帖子

使用Aurelia进行全局变量订阅

我在HTML中的脚本标记中初始化了一些全局变量:

<script>
  count = 0;
  window.count2 = 0;
  var count3 = 0;
</script>
Run Code Online (Sandbox Code Playgroud)

app.js,我订阅观察他们的变化:

let subscription = bindingEngine.propertyObserver(window, 'count')
  .subscribe((newValue, oldValue) => console.log('Global count: ', newValue, oldValue));

let subscription2 = bindingEngine.propertyObserver(window, 'count2')
  .subscribe((newValue, oldValue) => console.log('window.count2: ', newValue, oldValue));

let subscription3 = bindingEngine.propertyObserver(window, 'count3')
  .subscribe((newValue, oldValue) => console.log('Global count3: ', newValue, oldValue));  
Run Code Online (Sandbox Code Playgroud)

然后我改变这样的值:

change() {
    count++;
    count2++;
    count3++;
}
Run Code Online (Sandbox Code Playgroud)

只有count&& count2在控制台中被观察到:

Global count:  1 0
window.count2:  1 0
Run Code Online (Sandbox Code Playgroud)

这是GistRun

问题:为什么count3不能观察到?我认为3种形式的初始化是等价的.

javascript aurelia aurelia-binding

1
推荐指数
1
解决办法
889
查看次数

标签 统计

aurelia ×1

aurelia-binding ×1

javascript ×1