我正在开发一个同时使用 angularJS 和 Foundation 的项目,因此我正在使用Angular Foundation项目来让 Foundation 的所有 javascript 部分正常工作。我刚从 0.2.2 升级到 0.3.1,导致 top bar 指令出现问题。
以前,我可以使用一个类has-dropdown
来指示一个“顶栏”菜单项,其中包含一个下拉菜单。由于菜单项是从列表中获取的,并且只有一些具有实际的下拉菜单,因此我将使用以下代码:
<li ng-repeat="item in ctrl.items" class="{{item.subItems.length > 0 ? 'has-dropdown' : ''}}">
但是,最新版本需要一个属性has-dropdown
而不是类。我尝试了几种解决方案来有条件地包含此属性,但似乎都不起作用:
<li ng-repeat="item in ctrl.items" has-dropdown="{{item.subItems.length > 0}}">
这给了我一个真值或假值,但在这两种情况下,指令实际上都是活动的。使用ng-attr-has-dropdown
.
这个答案使用一种有条件地应用一个或另一个元素的方法,一个有一个没有指令属性。如果同一个元素是持有的那个,那是行不通的,ng-repeat
所以我想不出任何方法来使它适用于我的代码示例。
这个答案我不明白。这适用于我吗?如果是这样,大致如何工作?由于项目的设置,到目前为止我已经编写了几个控制器和服务,但到目前为止我几乎没有任何自定义指令的经验。
简而言之,这可能吗,如何?