Я пытаюсь использовать Promise
в своем приложении TypeScript. Но не похоже, что это возможно?
Сначала я попытался использовать Promise.all()
, но затем я, конечно, получаю: «Обещание» относится только к типу, но используется здесь как значение ». И не имеет значения, если я вместо этого попытаюсь создать экземпляр Promise, выполнив new Promise().all()
(или сделав это в два шага, то есть сначала создав экземпляр, а затем вызвав метод). И это также выдает то же сообщение об ошибке в моих заголовках функций, где я делаю async getData(): Promise<X>
, что не имеет никакого смысла для меня.
Как указывалось в некоторых других обсуждениях этой проблемы, я изменил цель на "es6" с "es5" в моем файле tsconfig.json. Я также попытался изменить его на "ES2005". Это позволило мне построить приложение. Но когда я пытаюсь запустить его, я получаю
Не удалось создать экземпляр модуля [имя модуля] из-за: Ошибка: [$ injector: nomod]
Модуль '[имя модуля]' недоступен
Возможно, есть что-то еще, что мне также нужно настроить при переходе с es5 на es6?
Я также попытался добавить "lib": [ "es2015" ]
к параметрам компилятора в tsconfig.json, как предложено в другом потоке. Но потом я получаю несколько сотен ошибок, говоря что-то вроде: Build: Cannot find name 'Element'. File: angular.d.ts
Редактировать: Как предложено в комментариях, я также добавил «dom» в массив lib, что избавило от ошибок компиляции. Но вместо этого получите «ReferenceError:« Обещание »не определено».
Как мне это решить? Я в порядке с любым решением, которое позволяет мне использовать Promise
.
Заранее спасибо!