gpt4 book ai didi

javascript - 禁用 Angular 2+ 中的链接

转载 作者:太空狗 更新时间:2023-10-29 17:56:17 25 4
gpt4 key购买 nike

我试图在 Angular 6 中进行 API 调用之前禁用链接。我希望在返回 getSelectedDealer() API 之前禁用链接。

 <menu-link *ngIf="perms.has(perms.TOP_OFFERS) && _dealerPersistenceService.getSelectedDealer()"
route="/dynamic-journeys/{{getDealerId()}}/vehicles">
<menu-item><img src="/assets/menu-icons/top-offers.svg">Dynamic Journeys</menu-item>
</menu-link>

这是“a”标签组件和 CSS 的代码。

<a [routerLink]="route" routerLinkActive="active" class="menu-link" [class.disabled]="disabled ? true: null">
<ng-content select="menu-item"></ng-content>

a.disabled {
pointer-events: none;
cursor: default;
}

基本上,我需要在 API 调用之前禁用“菜单链接”元素,然后再启用。

最佳答案

如果你想使用任何东西,你可以通过简单地向这个链接添加点击事件来实现:

<a [routerLink]="route"
routerLinkActive="active"
class="menu-link"
[class.disabled]="disabled ? true: null"
(click)="check($event)">

在 TS 中:

isReady = false;
check = (event) => {
if (!this.isReady) {
event.preventDefault();
}
}

所以 isReady 是您的组件的一个 bool 变量,在您需要之前它是假的。当您单击此链接时,它会检查它是否为真,但如果为假,它将阻止事件的原始行为,并且不会触发任何内容。

关于javascript - 禁用 Angular 2+ 中的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51445378/

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