如何在 hashbang 模式下定义指向 angular 路由的链接?
How to define links to angular routes in hashbang mode?
在 hashbang(非 HTML5)模式下定义指向 angular 路由的链接的正确方法是什么?
假设我有以下导航。酒吧:
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="#!/first">First</a></li>
<li><a href="#!/second">Second</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#!/" ng-click="logout()">Logout</a></li>
</ul>
</div>
它有效,但我有以下问题:
- 我看到很多文章作者通过
/first
或 #/first
而不是 #!/first
做同样的事情,但由于某些原因它对我不起作用(我猜那是因为我使用 #!
作为哈希字符串,但我不知道为什么有这么多例子 #/first
而不是 #!/first
如果后者是默认的)
这样定义logout
动作可以吗?
<li><a href="#!/" ng-click="logout()">Logout</a></li>
因为我觉得有点丑。
hash-bang 语法是 。这个版本仍然是新的,它可以解释为什么你看不到很多关于 hash-bang 路由的文章。
无论如何,从这一行开始:
<li><a href="#!/" ng-click="logout()">Logout</a></li>
您可以将重定向移动到 logout()
函数:
$scope.logout = function() {
...
$location.url('/home');
}
别忘了注入$location
.
在 hashbang(非 HTML5)模式下定义指向 angular 路由的链接的正确方法是什么?
假设我有以下导航。酒吧:
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="#!/first">First</a></li>
<li><a href="#!/second">Second</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#!/" ng-click="logout()">Logout</a></li>
</ul>
</div>
它有效,但我有以下问题:
- 我看到很多文章作者通过
/first
或#/first
而不是#!/first
做同样的事情,但由于某些原因它对我不起作用(我猜那是因为我使用#!
作为哈希字符串,但我不知道为什么有这么多例子#/first
而不是#!/first
如果后者是默认的) 这样定义
logout
动作可以吗?<li><a href="#!/" ng-click="logout()">Logout</a></li>
因为我觉得有点丑。
hash-bang 语法是
无论如何,从这一行开始:
<li><a href="#!/" ng-click="logout()">Logout</a></li>
您可以将重定向移动到 logout()
函数:
$scope.logout = function() {
...
$location.url('/home');
}
别忘了注入$location
.