अगर मैं यूआरएल की एक सरणी है:मैं Promise.all के साथ URL की सरणी कैसे प्राप्त कर सकता हूं?
var urls = ['1.txt', '2.txt', '3.txt']; // these text files contain "one", "two", "three", respectively.
और मैं एक वस्तु है कि इस तरह दिखता है का निर्माण करना चाहते:
var text = ['one', 'two', 'three'];
मैं fetch
के साथ ऐसा करना, जानने की कोशिश कर रहा है जो बेशक Promise
एस देता है।
कुछ बातें मैं कोशिश की है कि ऐसा नहीं काम:
var promises = urls.map(url => fetch(url));
var texts = [];
Promise.all(promises)
.then(results => {
results.forEach(result => result.text()).then(t => texts.push(t))
})
यह सही नहीं लगता है, और किसी भी मामले में यह काम नहीं करता है - मैं एक साथ न करना पड़े सरणी ['एक', 'दो', 'तीन']।
Promise.all
का उपयोग कर सही दृष्टिकोण यहां है?
यह एक bracketing गलती की तरह दिखता है। क्या आप वास्तव में '.forEach (...)' के वापसी मूल्य पर '.then' को कॉल करना चाहते हैं, या बल्कि '... .text()' पर? – Bergi
आप कहां/ग्रंथों को लॉग करते हैं और इसे अभी भी खाली मानते हैं? – Bergi