2012-10-29 29 views
1

我有一个观点,我用它来创建一个项目。在其他视图中,我有链接到这个项目视图。当用户关闭项目视图时,我需要返回到项目视图已被调用的视图。在angularjs中有支持吗?angularjs:如何返回到调用视图?

到目前为止,我所看到的没有什么比这更先进:

function myController($scope, $location, ...) { 
    ... 
    $scope.submit = function() { 
     $scope.item.$save(function() { 
      $location.path("/my/url"); 
     }); 
    }; 
} 

我要寻找的东西,没有硬编码来代替"/my/url"

回答

0

关于我头顶的一个建议是在您的根作用域(或某个共享父作用域)中有一个可用作堆栈的数组。当你想要返回一个'子流'时,你可以在进入子流之前将当前位置推送到堆栈。子流完成后,它可以弹出堆栈中的最后一个位置并返回。

+0

编辑答案但它有一个点。不是每个“子流”都会通过点击后退按钮返回。 –

+0

我想我会接受这个答案毕竟。我同意history.back()对于涉及从“子流”返回的某些场景可能太有限了。 – akonsu

0

history.back();应该可以正常工作。路由的重点在于利用URL,因此浏览器上的“后退按钮”可用于在单页应用程序中“向后”导航。 history.back();只是追溯到您的浏览器的历史。