【发布时间】:2016-08-03 00:00:21
【问题描述】:
我正在使用 AngularJS ui 路由进行路由,我想删除 #(来自 URL 的哈希)。我正在使用此代码并在我的 index.html 文件中使用 (base href="/") 。它工作正常,但是当我像 (http://0.0.0.0:3000/athletepersonalinfo) 这样刷新页面时,它给了我一个错误。
.config(function($stateProvider,$locationProvider) {
$locationProvider.html5Mode({ enabled: true, requireBase: false })
$stateProvider
.state('/', {
url: '',
templateUrl:HTML.HOME,
controller: 'homeController as home'
})
.state('home', {
url: '/',
controller: 'homeController as home',
templateUrl: HTML.HOME
})
.state('athletepersonalinfo', {
url: '/athletepersonalinfo',
controller: 'athleteProfileInfo',
templateUrl: HTML.ATHLETE_PERSONAL_INFO,
authenticate: true
})
【问题讨论】:
-
您能否详细说明您的代码“不起作用”的原因?你期待什么,实际发生了什么?如果您遇到异常/错误,请发布它发生的行和异常/错误详细信息。请edit这些详细信息,否则我们可能无法提供帮助。
-
@FrankerZ...当用户登录时,我的登录页面状态为主页,它重定向到0.0.0.0:3000/athletepersonalinfo。它也可以正常工作,但是当我刷新此页面时,它会出现类似 Loopback 404 错误:无法获取/athletepersonalinfo at raiseUrlNotFoundError (/home/ali/Desktop/EmpyresServices/node_modules/loopback/server/middleware/url-not-found.js:20:17)
-
要删除 url 中的哈希,您还应该处理服务器端的路由
标签: javascript angularjs angular-ui-router