Angularjs $routeParams.value在传递到新控制器时未定义
我试图将一个值从一个控制器传递到另一个控制器。使用$routeParams作为执行此操作的方法 我的主要应用程序参考:Angularjs $routeParams.value在传递到新控制器时未定义,angularjs,angularjs-routing,Angularjs,Angularjs Routing,我试图将一个值从一个控制器传递到另一个控制器。使用$routeParams作为执行此操作的方法 我的主要应用程序参考: var app = angular.module('acnApp', ['ngResource', 'ngRoute']) 要传递值,请执行以下操作: //GO TO EDIT $scope.getOrgDetails = function (orgId) { console.log(orgId) $location.path('/network_or
var app = angular.module('acnApp', ['ngResource', 'ngRoute'])
要传递值,请执行以下操作:
//GO TO EDIT
$scope.getOrgDetails = function (orgId) {
console.log(orgId)
$location.path('/network_org/edit/' + orgId)
}
在my routes.js中:
$routeProvider.when('/network_org/edit/:acnId', {
templateUrl: 'Pages/acn/orgs/network_org_edit.html',
controller: 'orgUpdateController'
});
在接收控制器上:
app.controller('orgUpdateController', ['$scope', '$location', '$routeParams', function ($scope, $location, $routeParams) {
console.log($routeParams.orgId)}]);
运行此命令时,控制台结果为“未定义”
感谢您的帮助。请尝试“url”而不是“路径”方法。
像这样:
$location.url('/network_org/edit?orgId=' + orgId)
应该是:
console.log($routeParams.acnId)
而不是orgId,因为您使用acnId定义id。在
routes.js
中定义的正式参数名称为acnId
。因此,请尝试:
console.log($routeParams.acnId);
谢谢你的第二双眼睛DzinX。路线就是问题所在。我有一个错误的参考那里,并把重点放在我传递的拳头控制器。