AngularJS: 从指令中访问数据绑定的值
AngularJS: Access value of data binding from within directive
我正在尝试访问在 ng-repeat 之后执行的指令中的数据绑定值。
这是我的 html:
<div ng-repeat="(version, data) in versions" rszvers>
<div class="hidden_div">{{version}}</div>
<div><p>{{data.opts.a}}</p></div>
<div><p>{{data.opts.b}}</p></div>
<div><p>{{data.opts.c}}</p></div>
</div>
我的指令:
.directive('rszvers', function() {
return function(scope, element, attrs) {
var p = element.find("p").contents();
angular.forEach(p, function(value, key) {
console.log(key);
console.log(value.textContent);
});
};
})
我尝试使用 value.textContent 访问我的 <p>
的值(在控制台中显示正确的值),但我当然只检索 {{data.opts.a}}
。
我试图评估或解析此绑定,但没有成功。
我知道一定有一种简单的方法可以做到这一点,但我无法解决这个问题。
您能否阐明我遗漏的内容以及如何解决此问题?
您可以通过 scope
访问它,例如:
.directive('rszvers', function() {
return function(scope, element, attrs) {
console.log(scope.data.opts.a, scope.data.opts.b, scope.data.opts.c);
});
我正在尝试访问在 ng-repeat 之后执行的指令中的数据绑定值。
这是我的 html:
<div ng-repeat="(version, data) in versions" rszvers>
<div class="hidden_div">{{version}}</div>
<div><p>{{data.opts.a}}</p></div>
<div><p>{{data.opts.b}}</p></div>
<div><p>{{data.opts.c}}</p></div>
</div>
我的指令:
.directive('rszvers', function() {
return function(scope, element, attrs) {
var p = element.find("p").contents();
angular.forEach(p, function(value, key) {
console.log(key);
console.log(value.textContent);
});
};
})
我尝试使用 value.textContent 访问我的 <p>
的值(在控制台中显示正确的值),但我当然只检索 {{data.opts.a}}
。
我试图评估或解析此绑定,但没有成功。
我知道一定有一种简单的方法可以做到这一点,但我无法解决这个问题。 您能否阐明我遗漏的内容以及如何解决此问题?
您可以通过 scope
访问它,例如:
.directive('rszvers', function() {
return function(scope, element, attrs) {
console.log(scope.data.opts.a, scope.data.opts.b, scope.data.opts.c);
});