gpt4 book ai didi

javascript - Angular UI路由器初始化

转载 作者:行者123 更新时间:2023-11-30 11:42:16 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中使用 Angular UI 路由器。当我初始化 UI 路由器而不是说 localhost:8000/#/ 时,我得到 localhost:8000/#!#%2F

我的app.js如下:

angular
.module('quiz',['ngMaterial',
'ngMessages',
'ngCookies',
'ngResource',
'quiz.routes'
]).config(function($resourceProvider) {
$resourceProvider.defaults.stripTrailingSlashes = false;
});

angular
.module('quiz.routes',['ui.router']);

在我的 quiz.routes.js 中我有:

(function () {
angular
.module('quiz.routes')
.config(config);

function config($urlRouterProvider,$stateProvider){
$stateProvider
.state('register',{
url: '',
templateUrl: '/static/templates/register.html'
});
}

})();

因此,我在 URL 中得到了 !#%2F 而不是尾部斜线。这是为什么?

最佳答案

假设您使用的是 Angular 1.6 版,那么这很可能是因为对默认 hashPrefix 所做的更改现在设置为 !。要修复,您需要将 $locationProvider 注入(inject)模块的 config block 并将默认的 hashPrefix 重置回空字符串。

$locationProvider.hashPrefix('')

这是 reported as a bug here ,尽管事实证明这是设计使然并且有意更改。

关于javascript - Angular UI路由器初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42190114/

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