ho ereditato un'applicazione angolare e ora hanno bisogno di fare un cambiamento.ordine Controllo di esecuzione in angularjs
Come parte di questo cambiamento, alcuni dati deve essere impostata in un controllore e poi utilizzato da un altro. Così ho creato un servizio e avevo un controller in cui scrivere i dati e un controller ne legge i dati.
angular.module('appRoot.controllers')
.controller('pageController', function (myApiService, myService) {
// load data from API call
var data = myApiService.getData();
// Write data into service
myService.addData(data);
})
.controller('pageSubController', function (myService) {
// Read data from service
var data = myService.getData();
// Do something with data....
})
Tuttavia, quando vado a utilizzare data
in pageSubController
è sempre indefinito.
Come posso fare in modo che pageController
eseguito prima pageSubController
? O è anche la domanda giusta da porre?
EDIT
mio codice di servizio:
angular.module('appRoot.factories')
.factory('myService', function() {
var data = [];
var addData = function (d) {
data = d;
};
var getData = function() {
return data;
};
return {
addData: addData,
getData: getData
};
})
Possiamo avere uno sguardo a 'definizione myService'? Aggiunto anche il tuo html –
@RahilWazir. l'utilizzo dei dati è in effetti in ng-table params –
Sarebbe bello se includessi il tuo html, così sapremo come hai usato i controller. –