Моя команда работает над более старым проектом AngularJS, который мы недавно обновили до. Net Core 3.1, в то время как проект работает без него, мы хотели бы начать обновление наших сценариев для использования TypeScript. Никто из нас на самом деле раньше не использовал Typescript, и я уверен, что в нашей конфигурации есть что-то очень сложное c.
Я создал демонстрационный проект, который можно найти здесь: https://github.com/ExcaliburVT/TypeScriptBasic
В проекте есть ссылки на libman для angularjs, angular материала, bootstrap et c вместе с соответствующими «печатными текстами» TypeScript (по крайней мере, я так думаю) они правильные). Здесь: https://github.com/ExcaliburVT/TypeScriptBasic/blob/master/libman.json
Наш tsconfig. json точно такой: https://github.com/ExcaliburVT/TypeScriptBasic/blob/master/tsconfig.json
{
"compilerOptions": {
"noImplicitAny": true,
"noEmitOnError": true,
"removeComments": false,
"sourceMap": true,
"target": "es6",
"moduleResolution": "Node",
"baseUrl": "wwwroot",
"typeRoots": ["./lib/types"]
},
"include": [
"wwwroot/Scripts/**/*"
],
"exclude": [ "node_modules", "**/*.spec.ts" ],
"compileOnSave": true
}
Наконец я создал два примера файлов ts с разными способами обращения к angular.
https://github.com/ExcaliburVT/TypeScriptBasic/blob/master/wwwroot/Scripts/exampleOne.ts // TS2304 (TS) Не удается найти имя 'angular' // TS2503 (TS) Не удается найти пространство имен 'ng'
https://github.com/ExcaliburVT/TypeScriptBasic/blob/master/wwwroot/Scripts/exampleTwo.ts // TS2688 (TS) Невозможно найти файл определения типа для 'angular'
Достигнем предела, если мы ДОБАВЬТЕ путь к папкам типов в «include» tsconfig. json библиотеки кажутся найденными, но затем мы получаем ошибки компилятора для самих типов.
Я уверен, что это что-то довольно простое, что мы неправильно настроили, но у меня нет идей.
Заранее спасибо!
Дополнительное тестирование. Обратите внимание, что установка путей напрямую тоже не работает.
"baseUrl": "wwwroot",
"paths": {
"angular": [ "lib/types/angular" ],
"angular-material": [ "lib/types/angular-material" ],
"bootstrap": [ "lib/types/bootstrap" ],
"jquery": [ "lib/types/jquery" ]
}