gpt4 book ai didi

javascript - angularJS如何更改指令链接中的属性

转载 作者:行者123 更新时间:2023-11-29 16:10:16 25 4
gpt4 key购买 nike

我在我的应用程序中设置了进度
我想控制 Angular Directive(指令)的进度
但是如何更改指令链接函数中的 data-valuedata-total

app.html

    <div class="ui indicating small progress" data-value="39" data-total="50" plan-progress>
<div class="bar">
<div class="progress"></div>
</div>
</div>

在此 html 中,我想更改 data-valuedata-total

我试试这个:

app.js

  todoApp.directive('planProgress', function() {
return {
link: function(scope, elem, attrs) {
attrs.value = 10
attrs.total = 20
elem.progress();
}
};
});

但是没用
所以我想知道如何在我的指令中更改它?

最佳答案

在链接函数中使用 attrs.$set() 并重新编译该元素。另外,不要忘记将 $compile 服务注入(inject)到您的指令中。在您的 html 中,您已将指令添加为属性,但未在指令定义的限制值中提及它。您需要在指令定义中提及它。请看下面的代码:

todoApp.directive('planProgress', function($compile) {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
attrs.$set('value', 10);
attrs.$set('total', 20);
$compile(elem)(scope);
}
};
});

关于javascript - angularJS如何更改指令链接中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30422559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com