[英]AngularJS with RequireJS routing removes hash
我正在使用Angular Routes確定要向用戶顯示的視圖,如下所示:
define(['angular', './app'], function(angular, app) {
'use strict';
return angular.module('app', ['ngRoute']).
config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl:'assets/partials/partial1.html',
controller: 'MyCtrl1'
}).when('/mada', {
templateUrl:'assets/partials/partial2.html',
controller: 'MyCtrl2'
})
.otherwise({redirectTo: '/'});
});
});
目前,路由有效,但僅如下所示:localhost /#/ mada或localhost /#/我希望能夠看到localhost / mada
我知道添加
$locationProvider.html5Mode(true);
將擺脫哈希。 但這仍然無法使用戶轉到:localhost / mada,因為這將返回服務器404。
能做到嗎? 怎么樣?
如果您不使用服務器端語言,則將此代碼放在html頭中。
<base href="/">
喜歡 :
<head>
<base href="/">
</head>
並將其放在配置塊中:
$locationProvider.html5Mode(true);
如果您使用服務器端語言,則使用以下代碼:
app.get('*', function(req, res) {
res.render('index');
});
代替
app.get('/', function(req, res) {
res.render('index');
});
並將此代碼放在config塊中:
$locationProvider.html5Mode(true);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.