angularjs - 指令上的多个 ng 类属性

标签 angularjs directive ng-class

Relevant plnkr.

script.js我有一个指令 super .该指令有一个模板

template: '<div class="super" ng-class="{dirClass: foo}"></div>'

带有 ng-class属性。

请注意,该指令还有 replace: true .

<super>index.html 中调用此指令的元素有一个 ng-class属性也是如此。显然 Angular 不喜欢这样。它会尝试解析

[{viewClass: !bar} {dirClass: foo}]

这显然失败了。我希望它会自动合并..不。

我认为我要实现的目标很明确,但我该怎么做呢?

最佳答案

你可以这样做:http://plnkr.co/edit/xEc0pRHVbVLgR0NhWPEI?p=preview

js:

angular.module('app', [])
  .controller('myCtrl', function ($scope, $interval) {
    $scope.bar = false;

    $interval(function () {
      $scope.bar = !$scope.bar;
    }, 500);
  })

  .directive('super', function () {
    return {
      restrict: 'EA',
      template: '<div class="super" ng-class="{dirClass: foo , viewClass: !foo}" ></div>',
      scope: {
        foo: '='
      },
      replace: true
    };
  });

HTML:

 <super foo="bar"></super>

关于angularjs - 指令上的多个 ng 类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145245/

相关文章:

angularjs - Angular ui-select box禁用自动向上方向

javascript - 选项 不允许的方法。获取作品但不发布

Apache:操作指令未激活 CGI 脚本

angular - ngClass 最初不应用 css 类,仅在单击后应用

html - 有条件的 AngularJS/Bootstrap 颜色单元格

javascript - 我可以以某种方式将 Angular Strap 的 "aside"指令合并到 Angular UI 中吗?

javascript - 在 ng-bind-html::Binding Angular 属性中绑定(bind) ng-click

javascript - 从自定义指令内部调用 Angular UI Bootstrap 指令

c++ - #endif GUARD_H 是好的做法吗?

javascript - ng-class 在表的第一行有类并在 ng-click 上删除它