Ich möchte einen Controller ausführen, bevor ich step1.html lade.Wie führe ich einen Controller vor dem Laden von templateUrl aus?
(function() {
"use strict";
var app = angular.module("autoQuote",["ui.router","ngResource"]);
app.config(["$stateProvider","$urlRouterProvider", function($stateProvider,$urlRouterProvider){
$urlRouterProvider.otherwise("/");
$stateProvider
.state("step1", {
url : "/",
templateUrl : "easyquote/step1.html",
controller: "questionsCtrl",
})
.state("step2", {
url : "/step2",
templateUrl : "easyquote/step2.html",
controller: "questionsCtrl",
})
}]
);
}());
Ich möchte Controller in AutoQuoteCtrl.js Datei erstellen. und führt funtion auf Last initializeapp
.controller("initializeapp", ["$rootScope",function($rootScope,event, toState, toParams, fromState, fromParams){
$rootScope.$on('$stateChangeStart',function(event, toState, toParams, fromState, fromParams){
console.log('do on page load'+event+'\n'+toParams+'\n'+fromState+'\n'+fromParams);
});
}]);
Diese Funktion ich beim Laden der Seite ausgeführt werden soll, oder wenn Benutzer Seite aktualisieren. aber es wird bei jeder Zustandsänderung ausgeführt.
Überprüfen Sie dies: http://StackOverflow.com/Q/24357286/1867608 – Kroderia
Vielen Dank. Wo soll ich diesen Code schreiben? –
Nach der Konfiguration, überall können Sie den $ Bereich erhalten. Sie können einen Controller A schreiben und '
'haben, so dass er sofort ausgeführt wird. – Kroderia