Может кто-нибудь объяснить мне, почему этот код дает мне ошибку?TypeScript async итерация по ошибке объекта
var promise = new Promise((resolve, reject) => {
resolve([1, 2, 3, 4, 5]);
});
async function doSomethingAsync() {
var data = await promise;
data.forEach(v => console.log(v));
}
doSomethingAsync();
Когда я пытаюсь скомпилировать это как TSC file.ts --target ES6 у меня есть это:
error:async.ts(7,10): error TS2339: Property 'forEach' does not exist on type '{}'.
Что произойдет, если вы измените 'новый Promise (...)' на 'новый Promise (...)'? Возможно, проверка типа просто не может вывести достаточно определенный тип для 'обещания'? –
Кстати, не являются ли функции 'async' и' await' es7? – Michelangelo
Они, но AFAIK, они на самом деле не стабильны, и в будущем они будут изменены (im not sure). – user3075373