我有一个角度应用,我想更改每个页面的网址。网址显示为" .com /#/ home"而不是" .com / home"。任何想法?
'use strict';
angular.module('myApp.home', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/home', {
templateUrl: 'home/home.html',
controller: 'HomeCtrl'
});
}])
.controller('HomeCtrl', [function() {
}]);
答案 0 :(得分:0)
路由模式决定了您网站的网址。 $ location服务的默认行为是使用 hashbang模式进行路由。
hashbang网址如下所示:
xyz.com /#/收件箱/所有
AngularJS支持的其他路由模式是 html5Mode 。此模式使您的网址看起来像常规网址
HTML5模式如下:
xyz.com/inbox/all
您可以显式配置 hashbang 模式,需要在应用模块的配置功能中进行配置。
例如。
angular.module('myApp', ['ngRoute'])
.config(['$locationProvider', function($locationProvider) {
$locationProvider.html5Mode(false);
}]);
明确配置 html5Mode 模式。
例如。
angular.module('myApp', ['ngRoute'])
.config(['$locationProvider', function($locationProvider) {
$locationProvider.html5Mode(true);
}]);
Hashbang模式是AngularJS使用的默认模式,否则不会被告知。