我在我的网址中间得到了一个奇怪的#例如,如果我尝试转到localhost:8080,我运行了AngularJS应用程序,我被重定向到http://localhost:8080/#/home。我不明白这个#的来源,但我怀疑它与我在$ stateProvider中定义的URL有关。
这是$ stateProvider代码:
artists.sort()
有什么想法吗?
答案 0 :(得分:2)
来自single page applications上的维基百科文章:
页面不会在进程中的任何时刻重新加载,也不会控制转移到另一个页面,尽管可以使用位置哈希来提供 应用程序中单独逻辑页面的感知和可导航性
使用哈希使angular(和其他SPA框架)能够在不重新加载页面的情况下路由URL。
相关问题:
答案 1 :(得分:0)
如果您愿意,可以禁用哈希。
app.config(['$stateProvider','$urlRouterProvider','$locationProvider',
function($stateProvider, $urlRouterProvider,$locationProvider) {
//ROUTING
$locationProvider.html5Mode(true);
}]);
然后添加你的索引html文件:
<!doctype html>
<html>
<head>
//...
<base href="/">
</head>
//...
</html>