gpt4 book ai didi

angularjs - 如何禁用我的 AngularJS 链接?

转载 作者:行者123 更新时间:2023-12-04 22:12:30 26 4
gpt4 key购买 nike

我的代码如下所示:

    <a ng-disabled="!access.authenticated"
data-ng-class="{ 'current': $state.includes('home'), 'disabled': !access.authenticated } "
href="/home/overview"
title="Home">
<i class="fa fa-home fa-fw"></i>
</a>

我想这样做,以便当 access.authenticated 为 false 时,无法单击该链接。我想到的是将链接更改为按钮,然后将其样式化为链接。但是,这不起作用,因为按钮不会导致页面 URL 更改。
    <button ng-disabled="!access.authenticated"
data-ng-class="{ 'current': $state.includes('home'), 'disabled': !access.authenticated } "
href="/home/overview"
title="Home">
<i class="fa fa-home fa-fw"></i>
</button>

有人可以告诉我如何做我需要的吗?

最佳答案

这是一个简单的指令,它拦截点击事件并根据范围变量阻止页面转换:

module.directive('myLink', function() {
return {
restrict: 'A',
scope: {
enabled: '=myLink'
},
link: function(scope, element, attrs) {
element.bind('click', function(event) {
if(!scope.enabled) {
event.preventDefault();
}
});
}
};
});

你可以这样使用它:
<a my-link="linkEnabled" data-ng-class="{'disabled': !linkEnabled}" href="/home/overview">
<i class="fa fa-home fa-fw">Link</i>
</a>

Here is a demo

关于angularjs - 如何禁用我的 AngularJS 链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23453833/

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