AngularJS:如何创建接受参数的自定义指令?

时间:2016-07-03 06:18:11

标签: arrays angularjs attributes directive

我想创建一个自定义指令,该指令是一个属性,需要一个类似于ng-repeat如何获取项目列表的属性值。例如,

<div myDir="{{someList}}"></div>

这是怎么做到的?

1 个答案:

答案 0 :(得分:0)

你应该这样做

app.directive('myDir', function () {
    return {
        scope: {
            'myDir' : '@', //'@' for evaluated value of the DOM attribute, 
                           //'=' a parent scope property
        },
        link: function (scope, element, attrs) {
            scope.$watch('myDir', function (newVal) {
                console.log('myDir', newVal);
            });
        }
    };
});

用于评估值(使用&#39; @&#39;)

<div my-dir="{{someList}}"></div>

使用范围内的属性(使用&#39; =&#39;)

<div my-dir="someList"></div>

了解&#39; @&#39;之间的区别和&#39; =&#39;看here