在 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 合成器是 new from Angular 1.6 .这个版本还是新的,它可以解释为什么你看不到很多关于 hash-bang 路由的文章。
无论如何,从这一行开始:
<li><a href="#!/" ng-click="logout()">Logout</a></li>
您可以将重定向移动到
logout()
功能:$scope.logout = function() {
...
$location.url('/home');
}
不要忘记注入(inject)
$location
.
关于javascript - 如何在 hashbang 模式下定义指向 Angular 路由的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42436959/