javascript - 使用$route获取URL参数

标签 javascript angularjs

我有以下网址:

http://myurl.dev/users/32

我想将最后一个参数 32 传递给 $http.get 请求,但我不知道如何传递它。

到目前为止我有这个:

var matchmaker = angular.module('matchmaker', ['ngRoute'], function($interpolateProvider) {
    $interpolateProvider.startSymbol('[[');
    $interpolateProvider.endSymbol(']]');
})
.controller('LocationCtrl', ['$scope', '$http', '$location', '$routeParams', '$route', function($scope, $http, $location, $routeParams, $route) {

    var id = $route.current.params.id;

    console.log(id);

    $http.get('http://myurl.dev/services/' + id ).success(function(data) 
    {
        $scope.applicants = data;
    });

}]);

在控制台中显示:

Cannot read property 'params' of undefined

谁能告诉我我做错了什么?

编辑:

Angular 不会生成 url,它是服务器端生成的 url

编辑2.0

这是带有实际路由参数的routeProvider的配置:

var matchmaker = angular.module('matchmaker', ['ngRoute'], function($interpolateProvider) {
$interpolateProvider.startSymbol('[[');
$interpolateProvider.endSymbol(']]');
})
.config(function($routeProvider, $locationProvider) {
  $routeProvider.when('/matchmaker/locations/:id', {
    controller: 'LocationCtrl'
  });
  $locationProvider.html5Mode(true);
});

最佳答案

console.log($routeParams); 放入 Controller 中并检查其值。

如果是Object {},请检查您是否有使用参数的路由定义:

var module = angular.module('ngRouteExample', ['ngRoute']);

module.config(function($routeProvider, $locationProvider) {
  $routeProvider.when('/test/:id', {
    templateUrl: 'test.html',
    controller: 'TestController'
  });

  // configure html5 to get links working on jsfiddle
  $locationProvider.html5Mode(true);
});

如果是这样,您将在控制台中得到以下输出:

Object {id: "42"} 

关于javascript - 使用$route获取URL参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23426884/

相关文章:

javascript - 完整日历: format title as link

javascript - 如何使用多个链接过滤 AngularJS 中的列表

angularjs - 如何高效地构建 AngularUI ui-router 状态机?

javascript - 监视 $rootScope 结果 $scope 也被监视

javascript - 适合初学者的 Angular JS SEO

javascript - JavaScript 文件中的语法折叠在 Vim 中不起作用

javascript - Safari DP导入ES2015模块需要文件扩展名

javascript - 使用 Typescript 进行 react : Should the use of Typescript replace propTypes definitions?

javascript - Google map 自定义标记

javascript - AngularJS ng-重复绑定(bind)错误