2015-09-18 2 views
0

Я пытаюсь передать значение с одного контроллера на другой. Использование $ 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)}]); 

Когда я запускаю это, результат консоли «undefined»

Любая помощь оценена.

ответ

0

Попробуйте метод «url», а не «путь». так:

$location.url('/network_org/edit?orgId=' + orgId) 
0

Оно должно быть:

console.log ($ routeParams.acnId)

вместо orgId, потому что вы определяете идентификатор с acnId.

0

Формальное имя параметра, которое вы определили в routes.js, называется acnId. Поэтому попробуйте:

console.log($routeParams.acnId); 
+0

Спасибо за вторую пару глаз DzinX. Маршрут был проблемой. У меня была неправильная ссылка, и я сосредоточился на том, что я прохожу в кулачном контроллере. – crowsfeet

Смежные вопросы