Rumah > Soal Jawab > teks badan
Terdapat tiga langkah
langkah1: $http.jsonp(url1)
langkah2: $http.jsonp(url2)
langkah3: pengendalian tugasan,
Tiada keperluan pesanan untuk langkah 1 dan 2. 3 perlu dilaksanakan selepas langkah 1 dan 2 selesai
Oleh kerana langkah 1 dan 2 akan dipanggil di banyak tempat, kami tidak mahu ia menjadi
步骤1.success{
步骤2.success{
步骤3}} 这样的写法
Saya berharap dapat merangkum langkah 1 dan 2 ke dalam kaedah awam, dan kemudian laksanakan langkah 3 secara berurutan. Bagaimana saya harus menulisnya dalam angularjs
天蓬老师2017-05-15 17:07:30
Gunakan acara. Jangan gunakan sarang
$scope.$on('step1success',function(){
//步骤二代码
//执行完成后在回调函数中触发
$scope.$emit('step2success');
});
$scope.$on('step2success',function(){
//步骤3代码
//执行完成后在回调函数中触发
$scope.$emit('step3success');
});
$scope.$on('step3success',function(){
//全部执行完成
});
//步骤一代码
//执行完成后在回调函数中触发
$scope.$emit('step1success');
曾经蜡笔没有小新2017-05-15 17:07:30
Gunakan perkhidmatan $q yang disertakan dengan ng
let promises = {
alpha: promiseAlpha(),
beta: promiseBeta(),
gamma: promiseGamma()
}
$q.all(promises).then((values) => {
console.log(values.alpha); // value alpha
console.log(values.beta); // value beta
console.log(values.gamma); // value gamma
complete();
});
// promises包含多个promise对象,当所有promise对象成功返回时,$q.all().then()中的成功方法才会被执行。
// $http返回的正是promise对象
曾经蜡笔没有小新2017-05-15 17:07:30
Pengarang boleh belajar tentang $q dan objek janji. Seperti yang ditunjukkan di atas, Angular mempunyai $q.all(), yang boleh anda gunakan.