<ion-nav-buttons>不适用于隔离范围

时间:2016-09-15 16:41:44

标签: angularjs ionic-framework

我正在尝试尽可能减少我在我正在使用的应用中对$scope的使用。在这个应用程序中,我无法使用导航栏按钮与ctrl(使用controllerAs)一起工作,除非我不使用隔离范围。

CodePen:http://codepen.io/rinogo/pen/GjkPdG

如您所见,使用隔离范围(例如scope: {}),只有不在导航栏中的按钮才有效。但是,如果我们注释掉scope: {}并原型继承范围,则所有四个按钮都可以正常工作。

如果我在test()上设置$scope.$parent,我可以在导航栏中使用“范围方法”。鉴于我的应用程序的结构,这基本上是$rootScope(也就是<ion-nav-bar/>所在的范围),对吗?

似乎<ion-nav-buttons/>似乎在相关<ion-nav-bar/>的范围内进行评估,而不是在其定义的范围内进行评估!也许这也解释了为什么ctrl方法仅适用于继承范围,因为“幕后”ctrl是通过$scope.ctrl访问的,对吗?

所以我想我的问题是:

  1. <ion-nav-buttons/>是否在相关<ion-nav-bar/>
  2. 的范围内进行了评估
  3. 如果是,为什么?
  4. 如何实现从ctrl.test() ng-click <ion-nav-buttons/>调用Reuse Identifier的目标(同时保留一个独立的范围)?
  5. 提前感谢您分享您的专业知识! :)

0 个答案:

没有答案