将ng-repeat传递给指令

时间:2014-02-26 11:18:08

标签: angularjs angularjs-directive

我正在尝试为select / dropdown创建一个包装器指令......但是无法将ngRepeat传递给指令

return {
    scope: { options: '=', ngModel: '=', ngRepeat: '=', textField: '@', valueField: '@' },
    required: ['ngModel', 'ngRepeat', 'textField', 'valueField', '^form'],
    restrict: 'E',
    compile: compileFunction,
};

和相应的html是:

    html += '<select data-ng-model="ngModel" name="myfield" >' +
                ' <option value=""></option> ' +
                ' <option data-ng-repeat="ngRepeat" value="valueField">{{textField}}</option>' +
            '</select> ';

但收到错误:

Expected ngRepeat in form of '_item_ in _collection_[ track by _id_]' but got 'ngRepeat'.

任何想法为什么???

修改 PLUNKER LINK

添加了一个plunker链接

1 个答案:

答案 0 :(得分:0)

您应该使用ngRepeat而不是@接收=,因为您希望在放置后执行它,并且指令也不应该更改{的值{1}}表达......