0
step1.htmlをロードする前にコントローラを実行します。templateUrlをロードする前にコントローラを実行する方法
(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",
})
}]
);
}());
コントローラをautoQuoteCtrl.jsファイルに作成したいと思います。負荷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);
});
}]);
この関数は、ページの読み込み時やユーザーの更新時に実行します。各状態の変更時に実行されます。
これを確認してください:http://stackoverflow.com/q/24357286/1867608 – Kroderia
ありがとう。このコードはどこに書きますか? –
設定後、どこでも$スコープを取得できます。コントローラーAを作成し、 ' 'を指定すると、すぐに実行されます。 – Kroderia