我试图将值从一个控制器传递到另一个控制器。使用$ routeParams作为执行此操作的方法。
我的主要应用参考:
var app = angular.module('acnApp', ['ngResource', 'ngRoute'])
传递值:
//GO TO EDIT
$scope.getOrgDetails = function (orgId) {
console.log(orgId)
$location.path('/network_org/edit/' + orgId)
}
在我的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)}]);
当我运行它时,控制台结果是"未定义"
任何帮助表示感谢。
答案 0 :(得分:0)
尝试方法“url”而不是“path”。 像这样:
$location.url('/network_org/edit?orgId=' + orgId)
答案 1 :(得分:0)
应该是:
console.log($ routeParams.acnId)
而不是orgId,因为您使用acnId定义了id。
答案 2 :(得分:0)
您在routes.js
中定义的正式参数名称称为acnId
。所以试试:
console.log($routeParams.acnId);