通过将locationProvider.html5Mode
设置为true,我设法从URL中删除了#号,但是又出现了另一个问题。什么都没有显示,并且在我的控制台上它给我404错误。
我很清楚这个问题已经问过几次了,但是我尝试了所有这些解决方案都没有成功。请协助。
var app = angular.module('app', ['ngRoute']);
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$locationProvider.html5Mode(true);
$routeProvider
.when('/', {
templateUrl: 'home.html',
//controller:'homecontroller'
})
.when('/home', {
templateUrl: 'home.html',
//controller:'homecontroller'
})
.when('/best-prices-buy-phones-in-kenya', {
templateUrl: 'pages/buy-phones.html',
//controller:'aboutcontroller'
})
.when('/best-prices-buy-phones-in-kenya2', {
templateUrl: 'pages/buy-phones-htc.html',
//controller:'servicecontroller'
})
.when('/contact_us', {
templateUrl: 'contact-page.html',
//controller:'contactcontroller'
});
}]);
最佳答案
在Index.html中,您不再需要将'#'作为'$ locationProvider.html5Mode(true);'照顾这个。因此,链接上的href只是一个“ /”加上所需的页面,例如
<a href='/home'>
要么
<a href='/best-prices-buy-phones-in-kenya'>
关于javascript - Angular JS 1,路由,locationProvider,404错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38937872/