Behöver jag babel-loader ovanpå tsloader för att transpile TypeScript med webpack?


Jag skriver webpack.config.js för att transpilera TypeScript (för att vara mer exakt tsx) till ES5 med tsloader och babel-loader. Jag har två frågor:

1) Behöver vi fortfarande babel-loader även om tsloader producerar ES5-filer?
2) Är det meningsfullt att ställa in compilerOptions.module i tsconfig.json till es6 när målet är es5?

tsconfig.json är som följer:

{
  "compilerOptions": {
    "module": "es6",
    "target": "es5",
    "jsx": "react"
  }
}

Tack i förväg.

Svar #1

1) Behöver vi fortfarande babel-loader även om tsloader genererar ES5-filer?

Nej, det gör vi inte, om det inte finns ett behov av att använda icke-kompatibla funktioner som inte stöds av TypeScript (vanligtvis finns det inga).

2) Är det logiskt att ställa in compilerOptions.module i tsconfig.json på es6 när målet är es5?

Ja. Det genererar ES5-kod med ES-moduler som kan bearbetas av ett bundlingssystem (Webpack eller Rollup).

Relaterade artiklar