#angular #typescript #webpack
#angular #typescript #webpack
Вопрос:
Недавно я обновил свою версию Angular2 до последней версии и столкнулся с проблемой с загрузчиком awesome-typescript, которому нужен один файл объявления. Как я могу это сделать и куда связать этот файл typings? Я использую angular2-webpack-starter. У меня есть несколько файлов .d.ts в определениях моих поставщиков приложений.
На данный момент все попытки их компиляции заканчиваются чем-то вроде:
Module build failed: Error: Debug Failure. False expression: Output generation failed
at Object.assert (node_modulestypescriptlibtypescript.js:2407:23)
at Object.transpileModule (node_modulestypescriptlibtypescript.js:54401:18)
at State.fastEmit (node_modulesawesome-typescript-loadersrchost.ts:264:39)
at transform (node_modulesawesome-typescript-loadersrcindex.ts:164:28)
at transformationFunction (node_modulesawesome-typescript-loadersrcindex.ts:89:48)
at compiler (node_modulesawesome-typescript-loadersrcindex.ts:105:34)
at Object.loader (node_modulesawesome-typescript-loadersrcindex.ts:18:18)
@ ./src/app/providers/socket/index.ts 6:9-40
@ ./src/app/providers/socket/chat-service.ts
@ ./src/app/pages/restricted/restricted.ts
@ ./src/app/app.routes.ts
@ ./src/app/app.module.ts
@ ./src/app/index.ts
@ ./src/main.browser.ts
@ multi main
Совет от ATL readme:
All declaration files should be resolvable from the entry file. The easiest way to do this is to create a references.d.ts file which contains references to all of your declaration files. Then reference references.d.ts from your entry file.
Заранее спасибо!
Ответ №1:
Я исключил файлы .d.ts из входных источников и вместо этого определил расположение файлов .d.ts, используя свойство typingsRoot tsconfig.json. Кажется глупым, что ошибка должна выдаваться, когда входной файл не приводит к выводу. Это было бы довольно распространенным явлением, например, файл, содержащий только определение интерфейса.
Ответ №2:
Поскольку мои файлы .d.ts содержали только интерфейсы, я переименовал их все в [something] .interface.ts
. Теперь я только custom-typings.d.ts
что связал это с tsconfig.json
другими вещами.