以角度为单位将当前URL添加到href

时间:2015-08-28 15:00:04

标签: angularjs

我正在寻找一种比我目前的解决方案更具“角度”的替代方案:

我在app.js中定义了以下路线:

app.config(function ($routeProvider) {
    $routeProvider
      .when('/Table/:guid', {
        templateUrl: 'views/table.html',
        controller: 'TableCtrl',
        controllerAs: 't'

      })
      .when('/Table/:guid/new', {
        templateUrl: 'views/addPost.html',
        controller: 'AddPostCtrl',
        controllerAs: 'ap'
      })
      .otherwise({
        redirectTo: '/'
      });
});

在我的控制器中:

angular.module('acpApp')
.controller('TableCtrl', function ($scope, $location, $routeParams) {
    var param = $routeParams.guid;      
    $scope.currentUrl = $location.absUrl();
}

在我看来:

<a ng-href="{{currentUrl}}/new" class="btn btn-primary"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add post</a>

这有效,但我不觉得这是有角度的方式 - 或者是它?  我怎么能这样做呢?

1 个答案:

答案 0 :(得分:0)

我将这样做的方式是在控制器中:

angular.module('acpApp')
   .controller('TableCtrl', function ($scope, $location, $routeParams) {
      $scope.guid = $routeParams.guid;
   }

和视图:

<a ng-href="/Table/{{guid}}/new" class="btn btn-primary"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add post</a>