Angularjs 角连杆。什么是#它有什么作用?

Angularjs 角连杆。什么是#它有什么作用?,angularjs,Angularjs,我正在完成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/{{$in

我正在完成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传输到光电控制器,您可以通过$routeParams.id访问它。但是什么是#?

字符
#
(也称为哈希)用于应用程序/网站内的导航,并阻止浏览器刷新当前页面

如果你查看你的url,你会看到一个hash
#
后跟/photos/{{$index}

如何处理AngularJS中的哈希?

在AngularJS中,您可以使用$location服务来管理url

$location服务解析浏览器地址栏中的URL(基于window.location),并使该URL可供应用程序使用。对地址栏中URL的更改将反映到$location服务中,对$location的更改将反映到浏览器地址栏中

$location

字符
#
(也称为哈希)用于在应用程序/网站内导航,并防止浏览器刷新当前页面

如果你查看你的url,你会看到一个hash
#
后跟/photos/{{$index}

如何处理AngularJS中的哈希?

在AngularJS中,您可以使用$location服务来管理url

$location服务解析浏览器地址栏中的URL(基于window.location),并使该URL可供应用程序使用。对地址栏中URL的更改将反映到$location服务中,对$location的更改将反映到浏览器地址栏中


$location

#用于所谓的哈希导航,它是URL元素的一个单独部分。angular将散列导航用于内部散列路由,而不是整页路由。

用于称为散列导航的内容,散列导航是URL元素的一个单独部分。angular使用散列导航进行内部散列路由,而不是整页路由。

不仅在angualrjs中,而且在每个web项目中,如果我们使用一些url后跟#,则不会重新加载页面。
我希望您已经注意到,在虚拟url中也使用了

不仅在angualrjs中,而且在每个web项目中,如果我们使用一些url后跟#,则不会重新加载页面。
我希望您已经注意到,对虚拟url也使用了

这是一个散列,它允许angular在不重新加载页面或使用历史api的情况下更改url,从而允许深度链接和书签。启用html5模式并对服务器端路由进行一些更改将允许散列消失。
#
之后的URI部分称为片段。这是一个散列,它允许angular在不重新加载页面或使用历史api的情况下更改url,从而允许深度链接和书签。启用html5模式并对服务器端路由进行一些更改将允许散列消失。
之后的URI部分称为片段。