Неожиданный идентификатор в файле.d.ts

Я использую машинопись со следующими инструкциями по сборке.

"build:types": "tsc --emitDeclarationOnly",
"build:js": "babel src --out-dir lib --extensions \".ts,.tsx\" --source-maps inline",
"start": "npm run build:types && npm run build:js && node ./lib/bin/www.js"

Один из моих .ts файлы импортирует мангуст. При беге npm start Я получаю следующую ошибку. в .d.ts файл

\lib\models\v1\collection1.model.d.ts:1
(function (exports, require, module, __filename, __dirname) { import mongoose from 'mongoose';
                                                                     ^^^^^^^^

SyntaxError: Unexpected identifier

примечание "@types/mongoose" и "mongoose" уже являются зависимостью.

содержимое collection1.model.d.ts выглядит следующим образом. который генерируется tsc --emitDeclarationOnly

import mongoose from 'mongoose';
declare const _default: mongoose.Model<mongoose.Document, {}>;
export default _default;

tsconfig.json

{
"compilerOptions": {
  "target": "es2015",                       
  "module": "commonjs",                     
  "declaration": true,                     
  "outDir": "./lib",                          
  "strict": false,                           
  "allowSyntheticDefaultImports": true,     
  "esModuleInterop": true,
},
"include": ["src"]

}

.babelrc

{
"presets": [
    "@babel/env",
    "@babel/typescript"
],
"plugins": [
    "@babel/proposal-class-properties",
    "@babel/proposal-object-rest-spread",
    "@babel/transform-runtime"
]

}

1 ответ

Так что проблема в том, что я не должен был использовать babel, а вместо этого просто использовать tsc для генерации всего кода. Спасибо всем, кто помог

Другие вопросы по тегам