我正在尝试在AngularJS中使用html5Mode作为网址。
此代码运行良好:
.config(["$routeProvider", "$locationProvider",
function($routeProvider, $locationProvider){
$routeProvider.when("/editor", {
templateUrl: "pages/editor/index.html"
})
.when("/docs", {
templateUrl: "pages/docs/index.html"
}).otherwise({
templateUrl: "pages/home/index.html"
});
}
]);
但是这段代码给了我错误url is undefined
.config(["$routeProvider", "$locationProvider",
function($routeProvider, $locationProvider){
$routeProvider.when("/editor", {
templateUrl: "pages/editor/index.html"
})
.when("/docs", {
templateUrl: "pages/docs/index.html"
}).otherwise({
templateUrl: "pages/home/index.html"
});
$locationProvider.html5Mode(true);
}
]);
问题可能是我而不是
这可能是什么来源?
答案 0 :(得分:2)
我遇到了同样的问题,我只是弄清楚如何解决这个问题。我的错误是:
我没有注入“$ locationProvider”我试图调用“html5Mode”而没有在函数开头引用“$ locationProvider”,现在我有了这个:
app.config(['$routeProvider','$locationProvider',
function($routeProvider,$locationProvider) {
$routeProvider
.when("/", {
templateUrl: "Views/home/home.html",
controller: "HomeController"
})
.otherwise({ redirectTo: '/'});
$locationProvider.html5Mode(true);}]);
我错了,我有:“href =”/“”
但我正在使用带有Wampp的本地服务器运行所有应用程序,因此我的项目的基本路径是“/ NAME_OF_THE_PROJECT /”,如下所示:
<base href="/SEQUOIA/">
通过这两个更正,我解决了所有错误,正如我所见,你的基础没有最后的'/',也许你的应用程序正在搜索“www.localhost.com/staticCONTENT”而不是“... / static /内容”。
相同