gpt4 book ai didi

AngularJS 路由在手动刷新时中断

转载 作者:行者123 更新时间:2023-12-02 22:44:17 25 4
gpt4 key购买 nike

在配置方法中,我定义了一些路由,如下所示:

$locationProvider.html5Mode(true);

$routeProvider.when('/', {
...
});

$routeProvider.when('/front', {
...
});

$routeProvider.when('/user/account', {
...
});

使用 <a href=""> 浏览应用程序时一切正常标签。但是,当我转到/user/account时并手动刷新我的浏览器,它会弹出 /account偏离路线并将我重定向到 /user ,由于没有为 /user 定义路由,因此中断了进程中的渲染.

我注意到当我将路由配置为/account时,这种情况不会发生。只是,但这并不能解决真正的问题。因此,我设置了以下包罗万象的内容(在上面的路线下方)来记录发生的情况:

$routeProvider.otherwise({
redirectTo: function() {
console.log('bumped', arguments);

return '/';
}
});

看到它试图匹配 /account而不是/user/account 。这是怎么回事?

我使用的是 Angular 1.1.5。服务器在所有请求上正确返回index.html(对于 HTML5 模式),因此这似乎是客户端问题。

如何正确配置此路由?

编辑

事实证明这是 1.1.5 核心中的一个错误。

https://github.com/angular/angular.js/issues/2799

此处已修复

https://github.com/IgorMinar/angular.js/commit/2bc62ce98f893377bfd76ae211c8af027bb74c1d

最佳答案

最终使用ui-router这解决了这个问题。

关于AngularJS 路由在手动刷新时中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18171230/

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