angularjs - sref - ui-router params
Enrutador de UI angular: acceda a los parĂ¡metros de estado fuera de ui-view (2)
El menú se encuentra fuera de un bloque <div>
que se representa a través de ui-view
del Router UI.
Para modificar el menú de acuerdo con los parámetros de estado, necesito acceder a los parámetros de estado actuales desde el controlador del menú, pero la variable $stateParams
es un objeto vacío cuando se usa fuera de la parte de ui-view
.
¿Cómo puedo acceder a ellos?
angular.module(''myapp'').controller(''MenuCtrl'', [''$scope'', ''$rootScope'', ''$stateParams'', ''$meteor'', ''$filter'',
function($scope, $rootScope, $stateParams, $meteor, $filter) {
// ... $stateParams equals {}
}
]);
Asegúrese de inyectar $stateParams
en su controlador? ¿Puedes proporcionar un fragmento de código de lo que ya tienes?
Intenta ver los cambios de estado en tu controlador ...
angular.module(''myapp'').controller(''MenuCtrl'', [''$scope'', ''$rootScope'', ''$meteor'', ''$filter'',
function($scope, $rootScope, $meteor, $filter) {
//this watches for state changes
$rootScope.$on(''$stateChangeStart'',
function(event, toState, toParams, fromState, fromParams){
//do something when state changes
state = toState.name;
postid = toParams.postid;
console.log(toParams); //this is the stateParams you need
});
}
]);