Vue.js中未使用navigator.onLine更新计算属性
Computed property not updated with navigator.onLine, in Vue.js
我想使用Vue.js计算的属性来查看我的应用程序的在线状态。基本上,我有以下Vue设置:
new Vue({
el: '#app',
computed: {
onLine: function (){
return navigator.onLine;
}
}
})
以及以下标记:
<div id="app">
<div>{{ onLine }}</div>
</div>
我预计当我将计算机与网络连接/断开连接时,"onLine"属性会在true和false之间变化。然而,这并没有发生。。。
我唯一能让它改变的方法是:
var app = new Vue({
el: '#app',
data: {
onLine: navigator.onLine // initial status
}
})
window.addEventListener('online', function(){
app.onLine = true;
});
window.addEventListener('offline', function(){
app.onLine = false;
});
关于Vue计算属性,一定有一些我不理解的地方。谁能告诉我为什么它没有像我预期的那样工作?
我也遇到了同样的问题,但我通过使用带来Vue.js的方法来侦听来解决它http://vuejs.org/guide/reactivity.html#Change-检测注意事项
var app = new Vue({
el: '#app',
data: {
onLine: navigator.onLine // initial status
}
});
function updateConnectionStatus() {
app.$set('onLine', navigator.onLine); // this method
}
window.addEventListener('online', updateConnectionStatus);
window.addEventListener('offline', updateConnectionStatus);
因此,如果内存服务观察到的对象必须是基元或纯对象,则不能直接观察到"本机"对象。并且库将忽略这样做的尝试。
相关文章:
- 停止计算以在特定条件下更新
- 下拉列表未从计算的可观察项更新
- 挖空映射:加载数据后,父模型中的计算可观察量不会更新
- 更新Javascript货币计算器以实时计算多个总额
- Knockoutjs计算未从observableArray更新
- 计算的敲除似乎没有更新
- 节点js可以计算两个输入字段的值并更新另一个字段吗?
- 从表单、计算和使用 javascript 更新 html 内容中获取数字值
- 如何在不同计算机上的用户之间共享网站上的实时更新
- 使用计算属性更新 Ember 模型
- 保存时,在javascript计算之后,值不会更新
- 如何将最近几个月计算为一个时期,并通过javascript更新到图表
- Ko.计算函数更新两次
- .replace() 表达式未在计算可观察量中更新
- 新偏移量更新字体大小后不计算高度
- 基于计算的自动更新字段
- 角度计算未在视图中更新
- Vue.js中未使用navigator.onLine更新计算属性
- EmberJS-当相同的值被分配给依赖属性时,更新计算的属性
- 尝试对2个输入字段进行实时更新计算