gpt4 book ai didi

javascript - 为什么我的 $location.path ('test' ) 不更改地址栏

转载 作者:行者123 更新时间:2023-11-28 00:36:26 25 4
gpt4 key购买 nike

我正在一个巨大的代码库中工作,所以我无法在 fiddle 中复制结果。我正在开发的组件是用 Angular 编写的。

到目前为止我已经尝试过

window.location.href = 'test'
$location.path('test')
$location.hash('test')

每个变体都有效,并且 console.log 确认哈希已更改,但我的地址栏保持不变。

我知道有很多变量可能会导致这种情况,但我没有办法探索。谁能给我一些我可能忽略的可能原因?我已经搜索了 PreventDefault() 的代码库,我尝试了各种可以想象的设置哈希的不同方法,我什至尝试将哈希重新定义包装在 setTimeout 中。

感谢您的帮助!

最佳答案

你可以试试

$timeout(function() {    
$location.path('test');
});

请注意,所有 Angular 操作都必须在应用程序的摘要周期上运行。如果您使用未使用某些 Angular 服务处理该函数的函数进行此调用,则不会向上下文通知该更改。

关于javascript - 为什么我的 $location.path ('test' ) 不更改地址栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28442835/

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