webpack - Compilarea TypeScript cu ținta setată la 'ES3' sau 'ES5' Intern


Tocmai am intrat în lumea TypeScript și încerc să lucrez cu webpack ts-loader și babel-loader pentru a compila și transpila TypeScript în ES5. Dar apoi am văzut că există o opțiune de compilator în tsc care poate viza 'ES5', și m-am gândit 'atunci la ce folosesc babel-loader?'

Deci întrebările mele sunt:

  1. Ce se întâmplă în interior atunci când compilatorul TypeScript țintește ES5?
  2. Pot să folosesc ts-loader singur cu opțiunea tsconfig target pentru a-mi atinge scopul?
  3. Dacă da, care metodă este mai bună? (ts-loader către ES6, apoi babel-loader către ES5, sau ts-loader cu opțiunea target setată la ES5)
  4. Ce se întâmplă cu tree-shaking (funcționalitate webpack2) în ambele cazuri?

Răspuns #1

Ce se întâmplă în interior atunci când compilatorul TypeScript țintește ES5?

Ia codul tău TS/ES și îl transpilează în ES5 (exact ca Babel).

Pot să folosesc doar ts-loader cu opțiunea target din tsconfig pentru a-mi atinge scopul?

Da. Asta fac.

Dacă da, care cale este mai bună?

Opinia părtinitoare: https://medium.com/@basarat/typescript-won-a4e0dfde4b08

Ce se întâmplă cu tree-shaking (funcționalitate webpack2) în ambele cazuri?

Același lucru. Exporturile neutilizate sunt eliminate.