![](/img/trans.png)
[英]AngularJS $locationProvider.html5Mode(true) Base Url issue
[英]AngularJs $locationProvider.html5Mode(true); for remove Hash to URL not work
我的功能$ locationProvider.html5Mode(true)有问题,这是设置:
var app = angular.module("app", [
"ngRoute",
"ngAnimate"
]);
// ROUTE CONFIG
app.config(['$routeProvider','$locationProvider', function($routeProvider, $locationProvider){
$routeProvider.
when("/archive", {
templateUrl: "archive.php",
controller: "archiveCtrl",
animate: "slide-left"
}).
when("/single", {
templateUrl: "single.php",
controller: "singleCtrl",
animate: "slide-left"
}).
otherwise({
redirectTo: "/archive"
});
$locationProvider.html5Mode(true);
});
在head标签中:
<head>
<base href="/">
</head>
该网站的根是
site.com/main.php
其中main.php包含div ng-view
知道为什么它不起作用吗?
这是我在JSFiddle上创建的一个工作示例,我删除了templateUrl并改用template,但是在这种情况下应该没关系(您正在询问html5mode和base如何工作)
<div ng-controller="mainCtrl">
<a href="/single">single</a>
<a href="/archive">archive</a>
<div ng-view></div>
</div>
var app = angular.module("myApp", [
"ngRoute"
])
.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when("/archive", {
template: "<p>archive</p>"
})
.when("/single", {
template: "<p>single</p>"
})
.otherwise({
redirectTo: "/archive"
});
$locationProvider.html5Mode(true);
}])
.controller("mainCtrl", function mainCtrl($scope, $location) {
$scope.$location = $location;
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.