मैं कैसे await
async
समारोह पर call
या Babel
साथ apply
साथ कहा जाता है के साथ लागू होते हैं?कॉल या साथ नामक एक async समारोह पर प्रतीक्षा कोलाहल
class Service() {
async getOrders(arg1, arg2, arg3) {
return await this.anotherService.getOrders(arg1, arg2, arg3);
}
}
let service = new Service();
// ...
// Babel doesn't compile
// let stream = await service.getOrders.call(this, arg1, arg2, arg3);
// producing SyntaxError: Unexpected token for await
let stream = service.getOrders.call(this, arg1, arg2, arg3);
stream.pipe(res); // obviously not working without await in the prev line
अद्यतन/समाधान
समस्या यह है कि let stream = service.getOrders.call(this, arg1, arg2, arg3);
एक नियमित रूप से समारोह के अंदर एक गुमनाम समारोह में गया था: जहां getOrders
एक Service
वर्ग का async
विधि है
नीचे, एक उदाहरण है। अज्ञात फ़ंक्शन async
को चिह्नित करने के बजाय, मैंने इसे नियमित फ़ंक्शन के लिए किया था जिससे बेबेल SyntaxError: Unexpected token
उत्पन्न हुआ।
समाधान के लिए अग्रणी होने के लिए @loganfsmyth के लिए धन्यवाद।
आप क्या करना है पूछ रहे हैं जब आप एक async समारोह कॉल करना चाहते हैं एक और async समारोह के बाहर? यह स्पष्ट नहीं है कि कॉल/आवेदन/बाध्य, या आपके प्रश्न में 'कॉल' के लिए आप क्या कर रहे हैं, इसके साथ क्या करना है। – loganfsmyth
@loganfsmyth नहीं, मैं पूछ रहा हूं कि 'कॉल' या 'लागू'' नामक 'async' फ़ंक्शन' पर 'प्रतीक्षा' कैसे करें। – krl
आप सामान्य रूप से जैसे ही इंतजार करेंगे। मेरा जवाब अपडेट किया गया। – loganfsmyth