Ionic中为何在app.js的.run()中用定义了全局变量,在页面的控制器中能访问到

在 app.js 的 .run() 函数中用 rootScope.obj1=预定义了全局变量,第一次启动程序时,在页面的.controller()函数中是能够访问到rootScope.obj1 的。但在浏览器上刷新页面后,该页面的 .controller() 函数中访问到的 $rootScope.obj1 却变成了 undefined。

开始以为刷新时 app.js 的 .run() 函数没有被执行,经测试发现是有执行的。但刷新时执行的顺序好像是:先执行该页面的 .controller() 函数,然后再执行 app.js 中的 .config() 函数,再然后是 app.js 中的 .run() 函数。跟第一次启动程序时不同。因为这样的先后顺序关系,故而导致了刷新页面后,在页面的 .controller() 函数中访问不到预定义的全局变量了。

请问,事实的确是这样的吗?如果是的话,又该如何解决这样的问题呢?预定义的全局变量究竟要放在哪里才好?


30秒到达战场
浏览 480回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript