Tôi đã tìm kiếm và tìm thấy "giải pháp" cho vấn đề này, nhưng tôi vẫn không thể làm việc này đúng.AngularJS: Đường dẫn liên kết bị hỏng khi html5mode (true) nằm trên
Các Kịch bản:
Tôi đang xây dựng một (phiên bản 1.2) trang web kiễu góc với giao diện người dùng Router và chạy nó trên máy chủ Node trên localhost. Tôi đang cố gắng để làm cho nó có url "đẹp" với $ locationProvider và bằng cách chuyển html5 (true) trên. Trang web của tôi hoạt động tốt khi nhấp qua nó, nhưng khi tôi cố gắng điều hướng đến đường dẫn liên kết tương đối hoặc làm mới đường dẫn liên kết, ngắt trang. Tôi cũng có ý định triển khai ứng dụng web này để Heroku khi hoàn thành:
RELATIVE LINK PATH:
http://localhost:8000/locksmith-services
TRANG ĐẦU RA KẾT QUẢ
Cannot GET /locksmith-services
bước tôi đã thực hiện:
1.) Trong "index.html" < đầu tôi>, tôi đã thiết lập địa chỉ cơ sở của tôi để:
<base href="/"></base>
2.) Trong file app.js của tôi (cho góc), tôi có nó được viết như sau:
// App Starts
angular
.module('app', [
'ui.router',
'ngAnimate',
'angular-carousel'
])
.config(['$urlRouterProvider', '$stateProvider', '$locationProvider', function($urlRouterProvider, $stateProvider, $locationProvider) {
$urlRouterProvider.otherwise("/");
$stateProvider
.state('home', {
url: '/',
templateUrl: 'pages/home.html',
controller: 'homeCtrl'
})
.state('services', {
url: '/locksmith-services',
templateUrl: 'pages/locksmith-services.html',
controller: 'servicesCtrl'
})
.state('locations', {
url: '/locksmith-locations',
templateUrl: 'pages/locksmith-locations.html'
})
.state('payment', {
url: '/locksmith-payment',
templateUrl: 'pages/locksmith-payment.html'
})
// use the HTML5 History API
$locationProvider.html5Mode(true);
}])
3.) Trong hướng của tôi, tôi đã html của tôi viết như sau:
<div class="wrapper">
<a ui-sref="home">
<img src="images/logo.png" class="logo" alt="Austin Texas Locksmith" />
</a>
</div>
<nav class="row navigation">
<a class="mobile33" ui-sref="services" ui-sref-active="active" class="active">Services</a>
<a class="mobile33" ui-sref="locations" ui-sref-active="active">Locations</a>
<a class="mobile33" ui-sref="payment" ui-sref-active="active">Payment</a>
</nav>
4.) My server.js file (nút máy chủ)
var express = require('express');
var app = express();
app.use(express.static(__dirname + '/front'));
var port = process.env.PORT || 8000;
app.listen(port);
Điều gì sẽ là giải pháp tốt nhất? Cảm ơn trước sự giúp đỡ của bạn.
Cảm ơn sự giúp đỡ của bạn! viết lại tập tin server.js của tôi đã làm các trick. – Oneezy