gpt4 book ai didi

angularjs - 如何更改 URL 不触发 $route 更改?

转载 作者:行者123 更新时间:2023-12-03 08:27:33 27 4
gpt4 key购买 nike

我有一种情况,我希望地址栏中的 URL 发生变化,但我不希望 Angular 像正常路由更改那样刷新 Controller 或 View 。

所以,转到 /data 然后点击一个链接说 /data/just-blue 只会刷新 ngView 的一部分不是整个 View 。

这怎么可能?

目前,我在应用 .config() 方法中将这 2 条路径定义为单独的 .when() 路径。

谢谢。

最佳答案

所以基本上您可以执行以下操作:

$scope.$on("$locationChangeStart", function (event, next, current) {
console.log(event, next, current);
console.log(next);
if (next == 'http://localhost:9000/data/just-blue') {
setTimeout(function() {
$window.history.pushState("object or string",
"Title", '/data/just-blue)'},20);
event.preventDefault();
// ... update your view
}
});

请注意,我使用了 setTimeout 而不是 $timeout

关于angularjs - 如何更改 URL 不触发 $route 更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20148355/

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