我正在使用angular-ui-router库,但我在URL方面遇到了问题。
我有以下代码:
app.js:
app.config(function ($stateProvider, $urlRouterProvider) {
$stateProvider
.state('state', {
url: '/state',
templateUrl: 'templates/state.html',
onEnter: function () {
/*... code ...*/
}
})});
index.html:
<a href="#/state">STATE</a>
这是有效的,但是当我从<a>
标签中删除'#‘时,它就不起作用了。
如何从URL中删除'#‘符号?
发布于 2014-03-01 02:20:41
如果您希望导航不使用散列标签,则需要启用HTML5Mode:
app.config(["$locationProvider", function($locationProvider) {
$locationProvider.html5Mode(true);
}]);
您还需要通过将以下代码添加到您的HTML文件的<head>
中来告诉angular应用程序的根地址:
<base href="/">
请注意,对HTML5模式的支持取决于浏览器。对于那些不支持History API的用户,可以使用Angular will fallback to hashbang。
https://stackoverflow.com/questions/22102815
复制相似问题