angularjs – 为什么变量只有在ng-include中的onLoad传递时才能在模板中访问?

前端之家收集整理的这篇文章主要介绍了angularjs – 为什么变量只有在ng-include中的onLoad传递时才能在模板中访问?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对角度范围如何工作感到困惑!

我使用ng-init和onLoad将两个变量传递给一个模板.这两个变量值都是从模板访问的,但是有一个控制器我已经绑定到该模板.我在想为什么两个变量都从模板打印它的值,但是从控制器访问时打印undefined(onLoad varibale).

小提琴说明我的问题jsFiddle

我所理解的是,当我们使用ng-init传递变量时,它会在当前范围内创建该变量,但是对于由onLoad传递的变量是什么?

请告诉我它是如何工作的.

谢谢.

解决方法

第二个控制器都可以访问这两个变量.

但是(看起来像)第二个控制器是在评估onload表达式之前创建的.话虽这么说,如果你想访问范围变量,你可以通过监视(你可能想要使用监视而不是使用范围变量的初始值,无论如何 – 如果你的变量是一个承诺的结果怎么办? ?).

这是一个示例,显示您可以从第二个控制器访问负载

http://jsfiddle.net/rDP2t/3/

猜你在找的Angularjs相关文章