$http.get('/services/menu').success(function (dataMenu) {
$http.get('/services/language').success(function (dataLanguage) {
console.log('dataLanguage', dataLanguage);
$scope.menuRoot = dataMenu.result.items;
$scope.menuItems = dataMenu.result.items;
$scope.languageRoot = dataLanguage.result;
$scope.currentMenuItem = null;
$scope.refreshExperiments();
$scope.mergeLanguage();
});
});
cevap
Evet, $q.all
kullanarak paralel olarak bunları çalıştırabilirsiniz: Alternatif
$q.all([$http.get('/services/menu'), $http.get('/services/language')])
.then(function (res) {
var dataMenu = res[0].data.result.items;
console.log('dataLanguage', res[1].data);
$scope.menuRoot = dataMenu;
$scope.menuItems = dataMenu;
$scope.languageRoot = res[1].data.result;
$scope.currentMenuItem = null;
$scope.refreshExperiments();
$scope.mergeLanguage();
});
Bir çekicilik gibi çalışır. Res'in başka bir 'veri' nesnesi içerdiğine dikkat edin, böylece onu düzenledim. – Guy
:
sonra aynı anda$http
istekleri hem yapar ve
var menuPromise = $http.get('/services/menu');
var languagePromise = $http.get('/services/language');
menuPromise.success(function(dataMenu) {
languagePromise.success(function(dataLanguage) {
console.log('dataLanguage', dataLanguage);
$scope.menuRoot = dataMenu.result.items;
$scope.menuItems = dataMenu.result.items;
$scope.languageRoot = dataLanguage.result;
$scope.currentMenuItem = null;
$scope.refreshExperiments();
$scope.mergeLanguage();
});
});
kodunu çalıştırır $http
sözlerinin her ikisi de yerine getirildiğinde (console.log... etc
) blok.
Çalışacağından emin misiniz? LanguagePromise, languagePromise'den önce bittiyse ne olur? – Guy
"... sözün ne zaman olduğu veya ne zaman reddedileceğine veya reddedileceğine bakılmaksızın," o zaman ", sonuç elde edildikten hemen sonra" o zaman "sekmeli dokümanlara basarılırsa," başarısızlık "ifadesi başarısız olur. ... Bence "başarı" sadece "için" şekeridir, bu yüzden languagePromise ilk olarak çözülürse, menuPromise çözülene kadar hala çağrılmayacaktır. – Brendan
- 1. daha iyi bir yol?
- 2. AngularJS testinde İletken/XPath'a daha iyi bir alternatif var mı?
- 3. Angularjs ile bir tıklamayı nasıl tetikleyebilirim veya daha iyi bir yol var mı?
- 4. Çıkış yapmak için daha iyi ve/veya daha kolay bir yol var mı?
- 5. Ruby'deki bir bloktan değer elde etmek için daha iyi bir yol var mı?
- 6. MSXML'den daha iyi bir IDOMImplementation var mı?
- 7. Linux'ta ekran koruyucuları engellemek için iyi bir yol var mı?
- 8. WMI kullanarak VB.NET 2008'de MAC ve IP Adreslerini eşleştirmek için başka bir yol var mı?
- 9. Performans: İstemci özelliklerinde bir satırı yorumlamak için daha iyi bir yol var mı?
- 10. Yükseltilmiş bir paylaşımlı bellek segmentinin varlığını kontrol etmek için daha iyi bir yol var mı?
- 11. İki seçeneği "birleştirmek" için herhangi bir yol var mı?
- 12. günün saatini ayıklamak için daha iyi bir yolu var mı?
- 13. Bunu yapmak için daha iyi bir şey var mı?
- 14. WebView yenilemek için daha iyi bir yolu var mı?
- 15. HTTPS ... Çözüm veya daha iyi bir yol?
- 16. Birden çok @ font yüzünü uygulamak için daha iyi bir yol var mı?
- 17. PHP'de POST değişkenlerini kontrol etmek için daha iyi bir yol var mı?
- 18. Delphi - Eyalet kısaltmalarından eyalet kısaltmaları almak için daha iyi bir yol var mı?
- 19. Android: Veri tabanı girişini eklemek ve/veya güncellemek için daha iyi bir yol var mı?
- 20. C89'da typedef'd yapıları iletmek için daha iyi bir yol var mı?
- 21. İki tarihten sonra almak için yakutta daha kısa bir yol var mı?
- 22. İki veri panosu üzerinden yineleme yapmak için liste anlamada daha hızlı bir yol var mı?
- 23. Python 3 bytes.index: daha iyi bir yol?
- 24. Kovaryans bildirmek için bir yol var mı?
- 25. SQLAlchemy: bildirim ile güncellemek için daha iyi bir yol?
- 26. Bu deseni kabuk veya sed ile eşleştirmek için bir yol var mı?
- 27. Güne göre sıralama yapmak için daha iyi bir yol nedir?
- 28. Öğeleri yakutta yinelenebilir bir şekilde sarmak için daha temiz, daha kısa, yerleşik bir yol var mı?
- 29. boşlukları ve parantezleri bir dizgede değiştirir + sed + bundan daha iyi bir yol var mı?
- 30. Swing'ten daha iyi bir Java uygulama çerçevesi var mı?
['$ q.all'] 'a (http://docs.angularjs.org/api/ng.$q) ve [' $ q.when']' e bakabilirsiniz (http://docs.angularjs.org/api/ng.$q). –