typescript - Memahami file .tsconfig


Sebagai pemula, saya tidak dapat memahami makna beberapa istilah, meskipun sudah membaca dokumentasi.

Di file .tsconfig saya saya memiliki

emitDecoratorMetadata

sourceMap

esModuleInterop -> Mengizinkan impor default dari modul yang tidak memiliki ekspor default. Ini tidak memengaruhi keluaran kode, hanya pemeriksaan tipe. Bisakah seseorang membuat definisi di atas sejelas mungkin bagi manusia? Apakah ini berarti kita bisa langsung mengimpor tanpa mengekspor?

Sebagai contoh, definisi untuk emitDecoratorMetadata dalam salah satu jawaban mengatakan

menghasilkan atau tidak metadata tipe-desain untuk deklarasi yang dihiasi dalam sumber

Apa arti deklarasi yang dihias dalam sumber? Juga, jika seseorang bisa menjelaskan sourceMap dengan istilah yang sedikit lebih manusiawi, itu akan sangat membantu.

Pembaruan: @Antonis Menulis jawaban yang luar biasa, namun bagian terakhirnya masih terlihat samar. Saya membuat postingan terpisah di sini:

Memahami esModuleInterop dalam file tsconfig Sumber Daya yang Saya pelajari:

  1. https://www.typescriptlang.org/docs/handbook/compiler-options.html
  2. https://basarat.gitbooks.io/typescript/docs/project/tsconfig.html
  3. apa tujuan dari tsconfig.json?

Jawaban #1

emitDecoratorMetadata - Dalam Angular misalnya kita memiliki dekorator @Injectable, @Component, @NgModule.

Dekorator ini memungkinkan kelas untuk mengeluarkan metadata yang membawa informasi yang diperlukan, agar Angular dapat memahami jenis dependensi yang dibutuhkan kelas ini dan digunakan di konstruktornya serta bagaimana menangani kelas ini nanti saat runtime

Periksa jawaban ini juga di sini.

sourceMap - Peta sumber membawa informasi dari kode sumber asli. Kita membutuhkan jenis peta ini ketika browser menjalankan kode yang telah diminifikasi, disamarkan, dan digabungkan. Peta ini mencerminkan kode asli dalam kode yang digabungkan sehingga kita dapat melakukan debug nanti.

esModuleInterop - Pertama-tama bacalah tentang Modul CommonJS dan ESModules. Kedua, itu pada dasarnya berarti bahwa jika tidak ada satu ekspor default dari modul tersebut, Anda tetap bisa mengimpor sesuatu secara default dari modul itu.

Jawaban #2

Dokumen resmi mungkin membantu memahami file .tsconfig secara keseluruhan.

Kehadiran file tsconfig.json di sebuah direktori menunjukkan bahwa direktori tersebut adalah akar dari proyek TypeScript. File tsconfig.json menentukan file akar dan opsi compiler yang diperlukan untuk mengompilasi proyek.

Informasi lebih lanjut di sini: tsconfig.json