我使用ui-router进行angularjs中的嵌套路由,它工作正常,但有一个问题,当我刷新页面或手动直接输入网址时,我收到一个错误: 在此服务器上找不到请求的URL / home / general。 我的应用代码是:
angular.module("app",["ui.router"])
.controller("appController",["$scope", function($scope){}])
.config(function($stateProvider, $urlRouterProvider,$locationProvider){
$stateProvider
.state('home', {
url: "/",
templateUrl: "/library/ngTemplates/home.html"
})
.state('home.general', {
url: "home/general",
templateUrl: "/library/ngTemplates/home-general.html"
})
.state('home.lifeStyle', {
url: "home/life-style",
templateUrl: "/library/ngTemplates/home-life-style.html"
})
.state('home.lifeStyle.sport', {
url: "/sport",
templateUrl: "/library/ngTemplates/home-life-style-sport.html"
})
.state('home.lifeStyle.economic', {
url: "/economic",
templateUrl: "/library/ngTemplates/home-life-style-economic.html"
});
$locationProvider.html5Mode(true);
});
答案 0 :(得分:1)
你应该改变
url: "home/general"
到
url: "/home/general"
第一个强烈反对就是阻止你的路由。