$ionicView.enter和cache:false之间的区别是什么
What is the difference between $ionicView.enter and cache:false
我正在开发一个视图,每次打开该视图时都需要调用Web服务的多个方法,我应该使用$scope.$on('$ionicView.enter', function(){...})
还是cache:false
?
每一个之间的真正区别是什么?
我真的很喜欢这个问答;A:
ui.router未重新加载控制器
Bipin Bhandari很好地总结了我们使用离子缓存机制的选项
- 避免CCD_ 3缓存
- 使用
$ionicConfigProvider.views.maxCache(0)
禁用缓存 - 或者保持缓存原样,并让控制器只执行一次。。。在查看生命周期和事件期间做一些明智的事情
所以,有了缓存,控制器将只执行一次:
缓存视图以提高性能。当一个视图被导航离开时,它的元素留在DOM中,并且它的作用域与$watch循环断开连接。当导航到已经缓存的视图时,其作用域将重新连接,并且留在DOM中的现有元素将再次变为活动元素。
我们可以抓住这些事件。。。用这个控制器做一些"总是做的事情"
$ionicView.enter
是每次激活所选视图时广播的事件。
cache:false
意味着页面永远不会被缓存,因此每次都会被完全重新加载。
我个人尽量避免使用缓存错误,因为这是糟糕的性能,但也有副作用,因为当你重新使用它时,你的控制器不会再次初始化。
相反,当我进入一个视图时,我使用$ionicView.enter
或$ionicView.afterEnter
来触发页面的几个操作,以完成加载。
相关文章:
- 全局变量和全局对象的属性之间有什么区别吗
- JavaScript中的函数和对象之间没有区别吗?
- 在下划线中使用_(obj).map(callback)和_.map(obj,callback)之间的区别
- javascript函数的:和=之间的区别
- 什么's本地node.js服务器和python简单http服务器之间的区别
- 函数中this和var之间的区别
- “util.inherits”和在NodeJS中扩展原型之间的区别
- Math.min()和Math.max()之间有什么区别?在Javascript中
- webpack开发模式和生产构建模式之间有什么区别
- servlet和代理servlet之间的区别
- Javascript 类型未定义和 void 之间的区别
- Javascript-defineProperty和直接在对象上定义函数之间的区别
- 关于承诺/A+规范,术语“当时可”和“承诺”之间有什么区别
- 布局引擎和javascript引擎之间的区别
- 什么's extjs中的mon()和on()之间的区别
- type=text/javascript和language=javascript之间的区别
- 函数()和新函数()之间的区别
- JavaScript中let和var之间的区别
- 蓝鸟的done()和spread()之间的区别
- Node.js HTTP/NET——连接和请求之间的区别