2017-03-09 70 views
2

我新的角度上,我有这样的代码:

HTML模板:
<a href="" ng-click="goToCategories();">See categories</a>

JS文件:
浏览器后退按钮:我一直停留在当前页面

$scope.goToCategories= function() { 
       CategoriesService.getCategory().then(function() { 
        $state.go('home.cat'); 
       }); 
      }; 

JS文件2:

$stateProvider.state('home.cat', { 
     parent: 'logged', 
     url: '/cat', 
     templateUrl: 'home/home-cat.html', 
     ... 
    }); 

问题是当我们在home-cat.html ,浏览器后退按钮不起作用。我只留在home-cat.html。如何纠正?

谢谢!

+0

可以添加plunker? –

+0

我不认为我可以把这个问题放在一个plunkr ...我不知道我是否错了,但是,因为我的问题与后退按钮浏览器有关,我不明白我怎么能重现plunkr问题... – Anna

回答

1

首先是“登录”一个具有URL的路线或是一条抽象路线?

第二个地方,你来自与链接有一个独特的网址?

第三,你是否知道你告诉$ state.go去一个不存在的路由?

$state.go('home.cat'); 

也许应该

$state.go('home.funnel'); 

如果你可以设置一个plunkr或的jsfiddle,这也将有助于:)

注意:你不需要

<a href="" ng-click="goToCategories();">See categories</a> 

你可以简单地使用

<a ui-sref="home.funnel">See categories</a> 

<a ui-sref="home.funnel({ param: value})">See categories</a> 

文档:https://github.com/angular-ui/ui-router/wiki/Quick-Reference#ui-sref

+0

正常答案不包括关于原始问题的多个问题。他们应该对原始问题发表评论。 – Zze

+0

@KeniSteward:'logged'是一个抽象路由,我从这个链接来的地方有一个唯一的URL,它的home.cat不是.funnel。我将编辑我的问题...感谢您的解释。 – Anna

+1

我无法评论,因为我刚加入 – KeniSteward