mocha и ts-node не могут найти локальный файл .d.ts - PullRequest
0 голосов
/ 04 мая 2019

У меня есть следующая структура проекта

|_typetests
|          |_type.test.ts
|
|
myproj.d.ts
tsconfig.json

Мой tsconfig.json выглядит так:

{
  "compilerOptions": {
      "module": "commonjs",
      "moduleResolution": "node",
      "lib": [
          "es6"
      ],
      "target": "es6",
      "noImplicitAny": true,
      "noImplicitThis": true,
      "strictNullChecks": true,
      "types": [
          "node",
          "mocha"
      ],
      "noEmit": true,
      "forceConsistentCasingInFileNames": true,
      "baseUrl": "./"
  },
  "include": [
      "types/*.test.ts"
  ],
  "exclude": ["node_modules"]
}

Если я бегу ./node_modules/.bin/tsc -p . --traceResolution

Тогда я вижу:

Имя модуля «myproj» было успешно преобразовано в «/Users/paulcowan/projects/myproj/myproj.d.ts». ========

Но когда я запускаю следующее через мокко

./node_modules/.bin/mocha -r ts-node/register types/*.test.ts

Error: Cannot find module 'myproj'

1 Ответ

1 голос
/ 04 мая 2019

Попробуйте использовать флаг --files для решения вашей проблемы.

Или установите TS_NODE_FILES переменную окружения на true и повторите попытку

TS_NODE_FILES=true ./node_modules/.bin/mocha -r ts-node/register types/*.test.ts

...