машинопись tsconfig позволяет. json импортировать, встроенные файлы (. js) - нет. Что дает? - PullRequest
0 голосов
/ 20 апреля 2020

после добавления "resolveJsonModule": true в мой проект .tsconfig я могу напрямую импортировать данные из .json файлов. Проект работает нормально, даже с nodemon.

Но когда проект собран и все файлы скомпилированы в папку dist, запуск node dist/index.js завершается неудачно, когда он сталкивается с импортом json. Фактическая команда сборки выглядит так:

babel src --out-dir dist --extensions .js,.ts --source-maps

Это серверный проект, не относящийся к webpack.

tsconfig согласно запросу:

{
  "compilerOptions": {
    "baseUrl": ".",
    "typeRoots": ["./types"],
    "target": "es6",
    "module": "es6",
    "declaration": true,
    "outDir": "dist",
    "strict": true ,
    "noImplicitAny": true,
    "strictNullChecks": true,
    "moduleResolution": "node", 
    "allowSyntheticDefaultImports": true, 
    "esModuleInterop": true,
    "resolveJsonModule": true 
  }
}

Ответы [ 2 ]

1 голос
/ 20 апреля 2020

Кажется, json файлы тоже компилируются. Попробуйте исключить их

{
  "compilerOptions": {...},
  "exclude": [
    "foldercontainingjsonfiles/*.json"
  ]
}
0 голосов
/ 20 апреля 2020

Убедитесь, что структура папок dist не меняется после. json import. У меня была похожая проблема, когда я импортировал config.json, который находился вне папки src с файлами *.ts. Перемещение. json файлов в папке src исправило проблему.

...