Angularjs 基本标签和 $locationProvider 阻止加载模板
Angularjs base tag and $locationProvider prevents templates to be loaded
我想删除 angularjs url 上的 #
。所以我关注了this blog.
这是我的 .config()
:
.config(['$stateProvider', '$locationProvider' function($stateProvider, $locationProvider,) {
$stateProvider.state('main', {
url: '/',
templateUrl: 'path/to/main.html',
controller:'mainCtrl'
})
$locationProvider.html5Mode(true);
}])
这是我的 <header>
:
<head>
<scripts>....
<base href="/"> // I ADDED THIS
</head>
但是当我访问/
link。像这样 http://localhost/my-app/
它只显示一个空白页。控制台上没有 error/s 所以我假设问题出在模板的加载上。我正在使用 ui.router
。有人遇到过这个问题吗?谢谢。
第一名
当你使用 <base href="/">
yu set ALL relative URLs appends to the path.
因此,如果您的应用在 /my-app/
可用,请使用 <base href="/my-app/">
您也可以尝试相对基础 href <base href="./">
,但我不推荐它。
现在你的应用程序在 http://localhost/my-app/
但基础是 http://localhost/
第二名
当您使用 html5 路由时,您可以确保网络服务器不响应其他页面,但您的 index.html
3,在那之后 ,可能因为基础 url...
而无法加载模板
我想删除 angularjs url 上的 #
。所以我关注了this blog.
这是我的 .config()
:
.config(['$stateProvider', '$locationProvider' function($stateProvider, $locationProvider,) {
$stateProvider.state('main', {
url: '/',
templateUrl: 'path/to/main.html',
controller:'mainCtrl'
})
$locationProvider.html5Mode(true);
}])
这是我的 <header>
:
<head>
<scripts>....
<base href="/"> // I ADDED THIS
</head>
但是当我访问/
link。像这样 http://localhost/my-app/
它只显示一个空白页。控制台上没有 error/s 所以我假设问题出在模板的加载上。我正在使用 ui.router
。有人遇到过这个问题吗?谢谢。
第一名
当你使用 <base href="/">
yu set ALL relative URLs appends to the path.
因此,如果您的应用在 /my-app/
可用,请使用 <base href="/my-app/">
您也可以尝试相对基础 href <base href="./">
,但我不推荐它。
现在你的应用程序在 http://localhost/my-app/
但基础是 http://localhost/
第二名 当您使用 html5 路由时,您可以确保网络服务器不响应其他页面,但您的 index.html
3,在那之后