Я хочу обновить проект [email protected] до tsc @ 2 и в процессе канавки typings
из моей цепочки инструментов.Какова эквивалентность типов globalDevDependencies для пакетов npm @types?
Это не проблема для обычных depencies как эти зависимости от моего typings.json
:
"dependencies": {
"bluebird": "registry:npm/bluebird#3.3.4+20160515010139",
"lodash": "registry:npm/lodash#4.0.0+20160416211519",
"mime": "registry:npm/mime#1.3.0+20160423043021"
}
можно легко установить с помощью
npm i @types/bluebird @types/lodass @types/mime
Но у меня есть некоторые globalDevDependencies
для моей тестовой установки в моей typings.json
:
"globalDevDependencies": {
"mocha": "registry:dt/mocha#2.2.5+20160317120654"
}
My первая попытка была:
npm install @types/mocha --save-dev
Однако теперь tsc
жалуется, что не знает mocha
функции it
и describe
.
tests/unit/HelloServiceTest.ts(4,1): error TS2304: Cannot find name 'describe'.
tests/unit/HelloServiceTest.ts(5,5): error TS2304: Cannot find name 'it'.
tests/unit/HelloServiceTest.ts(10,5): error TS2304: Cannot find name 'it'.
Как Longshot я ошибочно думал, устанавливая те глобально может решить эту проблему:
npm i @types/mocha -g
я наткнулся на this issue, где решение было не исключает папку типов в tsconfig.json
:
"exclude": [
"node_modules",
"!node_modules/@types"
]
, но он также не работает для меня, бросая ту же ошибку.
В конце концов, я не знаю, как добиться того же эффекта, что typings
'globalDevDependencies
и globalDependencies
был, когда я хочу использовать только npm
и @types/*
пакеты вместо typings
.
Спасибо! Это сработало для меня. Моя интерпретация документации заключается в том, что эти типизации должны быть включены по умолчанию, хотя это немного запутывает, что без нее это не работает. «По умолчанию все видимые пакеты« @types »включены в вашу компиляцию». – pulekies