我正在使用angular和angular-ui-router为应用程序设置一个脚手架。我已经做好了,但是它似乎在我的URL中添加了一个哈希(我在本地主机上运行dev)localhost:9000/#/test。当我着陆在主页面上时,它只是localhost:9000,它仍然服务于主视图内容。如果可能的话,我想摆脱这个哈希。所以这是我的设置:在我的index.html中,在body下面只有我的导航,然后是ui-view:
所以当我加载页面时,一切都很好,但当我开始使用我设置的导航时,它会在URL中添加井号(#),如果可能的话,希望不要有它们。谢谢!
<div class="row">
<ul class="nav navbar-nav">
<li><a ui-sref="index">Home</a></li>
<li><a ui-sref="test">Test</a></li>
</ul>
</div>
<div ui-view=""></div>
在我的app.js中,我只有以下内容:
angular
.module('playApp', [
'ui.router'
])
.config(function($stateProvider) {
$stateProvider
.state('index', {
url: '',
templateUrl: 'views/main.html',
controller: 'MainCtrl'
})
.state('test', {
url: '/test',
templateUrl: 'views/test.html',
controller: 'testCtrl'
});
});
所以当我加载页面时,一切都很好,但当我开始使用我设置的导航时,它会在URL中添加井号(#),如果可能的话,希望不要有它们。谢谢!
$locationProvider
并执行$locationProvider.html5Mode(true);
。 - Callum Linington