AngularJS - ngRoute / ng视图 - 堆栈视图

时间:2014-07-22 20:32:08

标签: angularjs cordova

我是Angular的新手,这是我第一次使用ng-view指令。我正在开发一个Phonegap应用程序,我注意到,点击许多连续的链接后会执行:

$location.path('/somePath') //this is illustrative - path depends on link clicked

新加载的视图已堆叠。这意味着:如果我按照N个链接(或N次调用$location.path),我必须单击我的Android设备中的后箭头N + 1次离开程序。虽然我不期望这种行为(我在这里是一个n00b),看起来我的应用程序需要的基本用户体验很好(它与历史堆栈有关吗?) - 但我还有一个“转到主菜单“按钮,我想要那个按钮”清除这样的堆栈“,回滚到第一个屏幕。

为什么需要它?因为我在我的应用程序中来回导航(目前我的“转到主菜单”按钮执行$location.path('/'),再次堆叠主菜单视图)当我尝试使用后面关闭我的应用程序时 - 箭头按钮我不得不按下那个按钮很多次。

那么:当我点击主菜单按钮时如何清除堆栈? (而不是做$location.path('/')

1 个答案:

答案 0 :(得分:0)

如果您正在构建一个phonegap应用程序,那么我假设实际的URL并不重要吗?您可能希望查看ui-router模块而不是ng-route,因为它更多地关注状态而不是简单路由。您可以轻松地移入/移出状态,必要时可以使用转换,而无需更改$ location(避免出现问题)。此外,ui-router支持命名视图和嵌套视图,因此如果适合您的项目,您可以将模板拆分为更小的部分。

很抱歉,不能直接回答您的问题,但听起来ui-router是您尝试做的更好的工具。

https://github.com/angular-ui/ui-router