routeParams为空

时间:2016-03-01 15:58:17

标签: javascript angularjs ngroute

我正在尝试使用$ routeParams获取URL参数:

var myApp = angular.module('myApp', [
  'ngRoute',
  'appControllers',
  'appFilters',
  'appServices'
]).config(['$routeProvider', function($routeProvider) {
  $routeProvider.when('/admin/organisations/:organisation_id', {
    controller: 'UpdateOrganisationCtrl'
  });
}]);

并在我的控制器中:

appControllers.controller('UpdateOrganisationCtrl', ['$rootScope', '$scope', '$http', '$window', '$routeParams',
function($rootScope, $scope, $http, $window, $routeParams) {

    console.log($routeParams.organisation_id);

}]);

但我打印undefined $routeParams{}有任何想法吗?

1 个答案:

答案 0 :(得分:2)

您尝试访问的网址应为

  

localhost:3000/#/admin/organisations/56cde4bf911747ea200d5a63

let composeText = composeTextView.text as NSString let paragraphRange = composeText.paragraphRangeForRange(composeTextView.selectedRange) print(composeText.substringWithRange(paragraphRange)) 会使您的应用成为单页应用,其中路由器的网址的相关部分将位于ngRoute之后(精美地称为#)。

Look at the example:

  

//给定:
  //网址:http://server.com/index.html#/Chapter/1/Section/2?search=moby
  //路线:/ Chapter /:chapterId / Section /:sectionId
  //
  //然后
  $ routeParams ==> {chapterId:'1',sectionId:'2',search:'moby'}

但是,如果您将HTML5Mode用于角度的$ location服务,则您提供的网址可能会有效。

有关详细信息,请参阅这些链接: