Это мой tsconfig.json
{
"compilerOptions": {
"typeRoots": [
"./typings"
],
"types": ["Phaser"]
}
}
В моем проекте root я получил package.json, package-lock.json, tsconfig.json and main.ts
, который содержит только одну строку:
let countdownNumber: Phaser.GameObjects.BitmapText;
tsconfig.json
содержит вышеуказанный код. Папка
typings
, которую я написал в typeRoots
, пуста.
После этого я запускаю следующую команду в терминале: tsc --traceResolution
Идея состоит в том, что я я пытаюсь использовать Phaser
как глобальную переменную в моем main.ts
файле.
Ожидаемое поведение:
Что должно произойти, Phaser
не должно получаться решен, потому что компилятор должен начать искать в моей пользовательской папке typings
.
Фактическое поведение: Каким-то образом это все еще решается. И это то, что он печатает: Type reference directive 'Phaser' was successfully resolved to '/Applications/XAMPP/xamppfiles/htdocs/phaser-test/node_modules/Phaser/types/phaser.d.ts' with Pac
kage ID 'phaser/types/phaser.d.ts@3.22.0', primary: false.
.
Я не знаю, как он его находит, поскольку в моем typeRoots
не указано node_modules
.
Что я пробовал:
Я пытался исключить папку node_modules
, я подумал, может быть, они все еще скомпилированы, и поэтому это происходит, но я не смог заставить exclude
работать.
"exclude": ["node_modules/*"]
"exclude": ["./node_modules/*"]
"exclude": ["./node_modules"]
, но ни один из них не сработал.