将角度ngView返回到零

时间:2014-10-21 09:07:55

标签: javascript html angularjs

我的Angular脚本中有路由,如下所示:

app.config(function($routeProvider) {
  $routeProvider

  .when("/contact", {
    templateUrl : "views/contact.html",
    controller : "GeneralCtrl"
  });

});

现在我有链接,很高兴带我到联系页面,如下:

<a href="#contact">Contact</a>
<div ng-view></div>

现在我有另一个链接要删除视图,以便网站返回到用户点击联系人链接之前的状态。以下内容无效并刷新页面:

<a href="#">Home</a>

我如何让它工作?如果我在路由配置中声明它,我将作为模板和控制器放置什么?它没有。我需要它来将ng-leave类应用于视图。 我正在使用Angular 1.3。

1 个答案:

答案 0 :(得分:0)

只需使用$ routeProvide.otherwise并使用redirectTo属性重定向到您的主页模板

app.config(function($routeProvider) {
  $routeProvider
  .when("/", {
    templateUrl : 'views/home.html',
    controller : 'HomeController',
   });
  .when("/contact", {
    templateUrl : "views/contact.html",
    controller : "GeneralCtrl"
  })
  .otherwise({ redirectTo: '/' });

});

修改

<a href="#contact" ng-click="setClass = true;">Contacts</a>
<p ng-class="{'ng-leave': setClass}">Im the element that'll have ng-leave class</p>
<ng-view>
   here is the view that I load
</ng-view>