在指令属性中传递数组

时间:2015-11-10 10:49:49

标签: javascript angularjs

我想在指令属性中传递数组。它不起作用。我试图在指令的属性中传递数组,但没有任何反应。

class Directive {
  constructor () {
    'ngInject';

    let directive = {
      restrict: 'E',
      template: '<div class="btn-group">
                   <label class="btn btn-primary classButton" 
                          ng-model="radioModel" uib-btn-radio="'First'" 
                          config="{{config[0]}}">{{config[0]}}
                   </label>
                 </div>',

      controller: Controller,
      controllerAs: 'vm',
      bindToController: true,
      scope: {
        config: '='
      }
    };

    return directive;
  }
}

class Controller {
  constructor() {
    'ngInject';
  }
}
<directive config="First, Second"></directive>

我应该如何将数组传递给指令?

1 个答案:

答案 0 :(得分:1)

马克西姆,

您需要在此处传递范围变量而不是数组常量,

也就是说,声明一个范围变量并将此值赋给该变量,如下所示,

$scope.myArray = ['Firs', 'Second'];

现在您可以将此范围变量传递给您的指令。

<directive config="myArray"></directive>

它应该工作!!!