我想更新视图,即使更改发生在另一台计算机上而不刷新页面。我尝试设置间隔并每隔10秒调用我的api,清除缓存。这里的问题是每十秒钟我将不得不重新加载我所有的数据,并且为了更新我应该切换状态。是否有更好的方法来处理这个问题?不断更新视图angularJs
回答
即时管理解决这个问题。我创建了一个函数,检查服务器的数据是否与来自模型的数据相同,如果没有,我更新缓存而不删除它和模型。
this.refresh = function(){
apiService.someFunction(false) //the false is parametr for cache
.then(function(someValue) {
if(someValue.length !== vm.model.length){ //check if the model is equal with the data from database
var cache = $cacheFactory.get('$http')
var get = cache.get('URL'); //getting the cache
var data = angular.toJson(someValue); //turn response from then to Json
get[1] = data; //changing the cache data
vm.model= someValue; //changing the model data
}
})
}
,虽然这可能起作用,但它是非常低效的,因为您正在为完全相同的数据进行两次数据调用。你真的应该考虑使用套接字库,如sockets.io或类似的,如果你想实时通信。 – Claies
@Claies是的,我知道问题是服务器已经存在,它的共享主机,他们不想离开,所以我不能使用node.js来安装sockets.io.如果他们决定更换服务器,我会更新应用程序。 –
如果您对服务器实现有任何意见,可能有一个端点在每次后续调用中仅返回已更改的数据?然后angular.extend到你现有的“模型”。 –
- 1. AngularJS视图不能更新
- 2. 使用angularjs更新视图
- 3. angularjs视图不与模型更新
- 4. Angularjs,$ http.get in Service不更新视图
- 5. AngularJS不会在$ resouce.query后更新视图
- 6. Angular2组件视图不断更新
- 7. WinJS - 不断更新到列表视图
- 8. 在AngularJS中更新模型时,视图不会更新
- 9. 不断更新GUI绘图
- 10. 不断更新图像 - django
- 11. ng-change没有更新视图AngularJS
- 12. 在AngularJS中更新屏幕视图
- 13. AngularJS:在视图更新运行功能
- 14. AngularJS没有更新的视图
- 15. 在AngularJS中未更新视图
- 16. AngularJS更新视图时$ rootScope改变
- 17. angularjs从http json更新模型视图
- 18. AngularJs /更新的NodeJS视图,其动画
- 19. AngularJS不会更新视图,直到刷新?
- 20. 更改不会自动出现在视图中(AngularJS更新)
- 21. Angularjs不更新异步模型更改视图
- 22. angularjs视图不更新,而模型更改
- 23. AngularJS使用$ q承诺更新服务/模型更新视图
- 24. 无法让Angularjs在更新模型时更新视图
- 25. AngularJS视图在模型更新后未更新
- 26. Angularjs在模型更新后没有更新ng-repeat的视图
- 27. Raphael.js图像填充不更新不断
- 28. 更新模型不更新视图
- 29. 更新属性不更新视图
- 30. 更新状态不更新视图
*为视图更新我应该切换状态*:不。为了更新视图,您应该更改模型,即视图的$范围内的内容。 –
是的,你可以,我可以每10秒调用一次api,如果我现在的模型与我从数据库更新模型中获取的数据不同。 –
这个问题解决了吗? –