Node.js 中使用 async/await 简化事件循环:示例和解释
const EventEmitter = require('events');
const myEmitter = new EventEmitter();
const fetchData = async () => { return new Promise((resolve, reject) => { myEmitter.on('dataFetched', (result) => { resolve(result); });
myEmitter.on('fetchData', () => {
setTimeout(() => {
myEmitter.emit('dataFetched', 'Data fetched successfully!');
}, 2000);
});
myEmitter.emit('fetchData');
});
};
const processData = async (data) => { return new Promise((resolve, reject) => { myEmitter.on('dataProcessed', (processedResult) => { resolve(processedResult); });
myEmitter.on('processData', (data) => {
setTimeout(() => {
myEmitter.emit('dataProcessed', data + ' And Data processed successfully!');
}, 2000);
});
myEmitter.emit('processData', data);
});
};
(async () => { try { const result = await fetchData(); console.log(result); const processedResult = await processData(result); console.log(processedResult); } catch (error) { console.error(error); } })();
原文地址: https://www.cveoy.top/t/topic/qbn7 著作权归作者所有。请勿转载和采集!