返回到angularjs中的先前渲染视图的问题

时间:2014-01-24 14:21:54

标签: angularjs angularjs-scope angularjs-routing

我遇到的问题可能意味着我错过了一些概念性的东西。我正在使用带有控制器的视图,该控制器从几个不同的服务(异步)填充。在导航视图的第一时间,一切正常。所有预期的元素都会在控制器中填充,并且dom会完美呈现。但是,在用户导航到同一视图的第二次时,DOM不会呈现所有元素。我已经在代码中添加了中断并确认数据由服务填充,与第一次完全相同。

我在点击事件上休息一下,这样我就可以检查范围后的渲染了。正如预期的那样第一次渲染时,一切都如预期的那样。第二次,尽管观察范围变量得到设置,当我检查范围后,渲染变量是未定义的!!我已经看过范围的$ id了。我可以看到,通过整个初始化和渲染,第一次范围的$ id是相同的。控制器第二次初始化相同的范围,但是当我检查后期渲染时,我可以看到范围已经改变,现在与控制器初始化时使用的范围不同。我不明白是什么创建了这个第二个范围,或者为什么第一个范围用于初始化控制器。

所以我对AngularJS人员提出的问题如下:   1. Angular在第一次和后续路线事件中对同一路线的行为方式存在差异。我注意到页面渲染速度更快。   2. $ digest / $ apply如何进场?它不会让我打电话给他们,因为我得到了inprog错误   3.调试方法如何/方法?我真的不明白这个去哪里。好像我已经失去了双向绑定。

感谢。

0 个答案:

没有答案