javascript - 将 ng-repeat 变量传递给自定义指令

标签 javascript angularjs

我在其中有一个 ng-repeat 和一个自定义指令,我试图将 ng-repeat 中的“item”变量传递给它们:

<li ng-repeat="item in list">
   <div custom-directive custom-data="item"></div>
</li>

想象一个虚拟指令:

angular.module('someModule').directive('customDirective', function() {
    restrict: 'A',
    scope: {customData: '@'},
    link: function(scope) {
       console.log(scope.customData);
    }
});
  • 如果我使用 custom-data="item" 然后在指令中使用 customData 等于字符串“item”。
  • 如果我使用 custom-data="{{item}}" 然后 customData 在 指令是 item 对象的字符串化表示,并且 对其中其他对象的引用丢失。

问题是:如何将对象形式的 item 传递给我的指令?

最佳答案

在你的范围分配中将'@'更改为'='然后它将起作用

angular.module('someModule').directive('customDirective', function() {
    restrict: 'A',
    scope: {customData: '='},
    link: function(scope) {
       console.log(scope.customData);
    }
});

关于javascript - 将 ng-repeat 变量传递给自定义指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30458982/

相关文章:

javascript - 检查字符串是否包含其他字符串的集合

javascript - 试验node-webkit : node-odbc fails

javascript - EXTJS 5 - 日期选择器仅限年份和月份

javascript - 重命名转换后的 Excel 文件 AngularJS

javascript - 我怎样才能不包含 ngIf 附加到 AngularJS 的元素?

javascript - AngularJS基于单选按钮与文本框结合的过滤表

javascript - Angular View {{ var }} 更新,但 $scope.var 没有改变?

javascript - 过滤对象数组以返回具有最新日期属性的对象

javascript - 将 AngularJS Controller 拆分为多个文件

javascript - 将图像文件附加到表单数据 - Cordova/Angular