我正在研究CA角度课程。我对这段代码有疑问:
<div class="main">
<div class="container">
<h2>Recent Photos</h2>
<div class="row">
<div class="item col-md-4" ng-repeat="photo in photos">
<a href="#/photos/{{$index}}">
<img class="img-responsive" ng-src="{{ photo.url }}">
<p class="author">by {{ photo.author }}</p>
</a>
</div>
</div>
</div>
</div>
在
因此,当我点击照片时,angular知道它的索引是什么,并且索引作为routeParams权限被中继到PhotoController,您可以通过$ routeParams.id访问它。但是什么是#?
答案 0 :(得分:2)
char [{1}}(也称为哈希)用于在您的应用/您的网站内导航,并阻止浏览器刷新当前页面。
如果您查看自己的网址,则会看到哈希#
后跟/ photos / {{$ index}}
如何在AngularJS中处理Hash?
在AngularJS中,您可以使用 $ location服务来管理网址
$ location服务解析浏览器地址栏中的URL(基于window.location),并使URL可供您的应用程序使用。对地址栏中URL的更改将反映到$ location服务中,对$ location的更改将反映到浏览器地址栏中。
答案 1 :(得分:1)
#用于名为哈希导航的内容,哈希导航是网址元素的单独部分。 hash用于内部哈希路由而不是整页路由。
答案 2 :(得分:1)
不仅在angualrjs中,而且在每个网络项目中,如果我们使用一些网址后跟#不会重新加载页面。
我希望你也注意到使用<a href="#">
作为虚拟网址。