gpt4 book ai didi

angular-service-worker - 为什么我不能在使用 Angular Service worker 时以编程方式更改 href?

转载 作者:行者123 更新时间:2023-12-04 17:43:12 24 4
gpt4 key购买 nike

我正在尝试在使用 Angular Service Worker 的外部网页中以编程方式更改链接的 href。

链接看起来像 <a _ngcontent-c32="" href="/something">Something</a>并使用这个 EventListener:

function(e){if(e=e||t.event){var n=this||e.target||t,r=n[C[e.type][f]];if(r)if(1===r.length)y(r[0],n,e);else for(var i=r.slice(),o=0;o<i.length&&(!e||!0!==e[z]);o++)y(i[o],n,e)}}

当我运行时 document.querySelector('a').setAttribute('href', '/something-else')document.querySelector('a').href = '/something-else'我可以看到 href 在技术上确实发生了变化,但是当我单击链接并改用原始 href 时,网页完全忽略了它。

我可以做些什么来让 Service Worker 意识到这一变化吗?

最佳答案

首先尝试使用角度属性 [attr.href][href] 并通过使用它,您可以使用三元条件以编程方式更改 url。

<a [href]="reverse ? 'https://stackoverflow.com/questions/53492185/why-cant-i-change-href-programmatically-in-angular' : 'https://material.angular.io/components/select/overview'" target="_blank">click here</a>

Note: these both properties will not append base URL so you need to specify complete path.

关于angular-service-worker - 为什么我不能在使用 Angular Service worker 时以编程方式更改 href?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53492185/

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