Awalnya saya tidak begitu mengerti nilai dari kesepakatan ini, jadi saya mencobanya, dan saya langsung ketagihan. ) izinkan saya memulai dengan mengatakan ini SOOOO super ramping. Menjalankan beberapa bug dengan sengaja dan ditampilkan deskripsi langsung dan tepat dari bug yang telah saya buat. Fitur debug sepadan dengan harganya saja. Kemudian saya memutar proyek reaksi dalam hitungan detik, (berputar artinya saya mengklik tombol. ) dan pratinjau langsung INSTAN ada di sana. tidak ada npm run start atau apapun. dan hampir semua kerangka frontend panas yang dapat Anda pikirkan tentang vue. js 3 ada. dan berbagai kerangka kerja css termasuk favorit pribadi saya. penarik css. sangat senang Show
Bagus untuk belajar, menguji, dan menghemat waktu Saya menggunakan ini untuk mempelajari dan menguji berbagai teknologi web. Lewat sudah waktu yang dihabiskan untuk menyiapkan semuanya, saya juga mendapatkan pratinjau langsung langsung dari pekerjaan saya ditambah dengan konsol yang berguna. Saya bekerja dengan tailwindcss, alpinejs, bootstrap dan saya dapat dengan mudah menjelajahi teknologi lainnya. Penulis responsif dan memelihara aplikasi. Saya meminta beberapa kerangka kerja, ini kemudian ditambahkan. Saya senang memiliki alat ini di gudang senjata saya karena alat ini mengubah cara saya sekarang bekerja di web Tempat sentral untuk mencoba kode dan menguji ide-ide baru Saya memerlukan pusat (online) untuk mencoba kode dan menguji ide-ide baru. PlayCode mudah digunakan, elegan, dan tampaknya telah mencakup semua kerangka kerja dan pustaka utama Hanya apa yang saya cari Itu bagus sekali. Alat yang sangat diremehkan, sangat berguna untuk pengembang dan penggemar pengembang lainnya dan semua orang yang ingin belajar coding Editor kode yang menarik dan berguna terutama fitur subdomainnya luar biasa. Saya akan merekomendasikan orang untuk mencoba Playcode. Kerja bagus, lanjutkan Pengalaman yang sangat menyenangkan, editor cantik yang memenuhi semua kebutuhan JavaScript, kemampuan untuk menambahkan pustaka eksternal sangat bagus, jendela dan menyesuaikannya adalah salah satu fitur terbaik, juga yang terpenting adalah konsol dan menunjukkan hasilnya dalam jendela terpisah, hal yang sangat hebat. Saya sangat merekomendasikan untuk mencobanya, itu sangat berharga Memulai adalah opsi root di TSConfig - opsi ini berhubungan dengan bagaimana proyek TypeScript atau JavaScript Anda disiapkan Menentukan daftar file yang diizinkan untuk disertakan dalam program. Terjadi kesalahan jika salah satu file tidak dapat ditemukan { "compilerOptions": {}, "files": [ "core.ts", "sys.ts", "types.ts", "scanner.ts", "parser.ts", "utilities.ts", "binder.ts", "checker.ts", "tsc.ts" ] } Ini berguna ketika Anda hanya memiliki sejumlah kecil bundel dan tidak perlu menggunakan glob untuk mereferensikan banyak bundel. Jika Anda membutuhkannya, gunakanlah { "compilerOptions": { "noImplicitAny": true, "strictNullChecks": true } } Memperpanjang - { "compilerOptions": { "noImplicitAny": true, "strictNullChecks": true }}_65Nilai _65 adalah string yang berisi jalur ke file konfigurasi lain untuk diwarisi. Strip tersebut dapat menggunakan resolusi gaya Node. js Konfigurasi dari file dasar dimuat terlebih dahulu, kemudian diganti dengan yang ada di file konfigurasi lama. Semua jalur relatif yang ditemukan di file konfigurasi akan diselesaikan relatif terhadap file konfigurasi asalnya Perlu dicatat bahwa _60, 61 dan 64 dari file konfigurasi penerus menimpa konfigurasi dari file konfigurasi asli, dan sirkularitas antara file konfigurasi tidak diperbolehkan Saat ini, satu-satunya properti lantai atas yang dibebaskan dari warisan adalah Contoh_71
_72
_73
Properti dengan jalur relatif yang ditemukan di file konfigurasi, yang tidak dikecualikan dari pewarisan, akan diselesaikan relatif terhadap file konfigurasi asalnya
Termasuk (_Sertakan_) - { "compilerOptions": { "noImplicitAny": true, "strictNullChecks": true }}61Menentukan larik nama file atau instance file untuk disertakan dalam program. Nama file ini ditetapkan ke direktori yang berisi file 72
Itu akan menutupi
_61 dan 64 mendukung karakter untuk menciptakan pola global
Jika contoh umum tidak menyertakan ekstensi file, maka hanya file dengan ekstensi yang didukung yang disertakan (misalnya 82, 83, dan 84 secara default, dengan 85 dan 86 jika 87 disetel ke true)
Kecualikan - { "compilerOptions": { "noImplicitAny": true, "strictNullChecks": true }}_64Menentukan array nama berkas atau pola yang harus dilewati saat menyelesaikan 61 Penting. 64 hanya mengubah berkas mana yang disertakan sebagai hasil dari pengaturan 61. Berkas yang ditentukan oleh 64 masih bisa menjadi bagian dari basis kode Anda karena pernyataan 98 dalam kode Anda, penyertaan 99, perintah 00, atau ditentukan dalam daftar 60 Ini bukan mekanisme yang mencegah berkas untuk disertakan dalam basis kode - ini hanya mengubah apa yang ditemukan oleh setelan 61
Referensi - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}06Referensi proyek adalah cara untuk menyusun program TypeScript Anda menjadi bagian-bagian yang lebih kecil. Menggunakan Referensi Proyek dapat sangat meningkatkan waktu interaksi build dan editor, menerapkan pemisahan logika antar komponen, dan mengatur kode Anda dengan cara yang baru dan lebih baik Anda dapat membaca lebih lanjut tentang bagaimana cara kerja referensi di bagian Referensi Proyek dari buku pegangan
Pilihan - Pilihan KompilerBanyak pilihan yang membuat jumlah besar di pengaturan Typescript’s dan itu juga meliputi bagaimana bahasa seharusnya bekerja Type CheckingIzinkan Kode Tak Terjangkau - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}08Kapan
Peringatan ini hanya tentang kode yang terbukti tidak dapat dijangkau karena penggunaan sintaks JavaScript, misalnya
Dengan 12
Ini tidak mempengaruhi galat atas dasar kode yang muncul menjadi tidak dapat dijangkau karena menggolongkan uraian
Izinkan Label yang Tidak Digunakan - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}13Setel ke false untuk menonaktifkan peringatan tentang label yang tidak digunakan Label sangat jarang di JavaScript dan biasanya menunjukkan upaya untuk menulis objek dengan tepat
Selalu Tepat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}14Pastikan bahwa berkas Anda diurai di Mode strict EcmaScript, dan mengeluarkan “use strict” untuk setiap berkas asal ECMAScript strict mode strict diperkenalkan di ES5 dan memberikan perubahan perilaku pada waktu proses mesin JavaScript untuk meningkatkan kinerja dan membuat kesalahan muncul agar diabaikan
ExactOptionalPropertyTypes - ________11______19Dengan mengaktifkan exactOptionalPropertyTypes, TypeScript menerapkan aturan yang lebih ketat tentang cara menangani properti pada 20 atau 21 yang memiliki awalan 80 Sebagai contoh, interface ini mendeklarasikan bahwa ada properti yang bisa berupa salah satu dari dua string. ‘dark’ or ‘light’ or it should not be in the object
Tanpa bendera ini diaktifkan, ada tiga nilai yang dapat Anda atur 23 menjadi. "gelap", "terang" dan 09 Menyetel nilai ke _09 akan membuat sebagian besar pemeriksaan runtime JavaScript untuk keberadaan gagal, yang secara efektif salah. Namun, ini kurang akurat 26 tidak sama dengan 23 tidak didefinisikan. Misalnya _28 akan memiliki perilaku yang berbeda dengan 09 sebagai kunci dibandingkan dengan tidak didefinisikan _19 membuat TypeScript benar-benar menegakkan definisi yang diberikan sebagai properti opsional 0
Tidak Ada Kasus Kejatuhan Di Switch - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}31Laporkan error untuk kasus fallthrough dalam pernyataan peralihan. Memastikan bahwa case yang tidak kosong di dalam pernyataan switch mencakup 32 atau 33. Ini berarti Anda tidak akan secara tidak sengaja mengirim bug fallthrough kasus _1
Tidak Ada Yang Tersirat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}_34Dalam beberapa kasus, jika tidak ada anotasi tipe yang ada, TypeScript akan kembali ke tipe dari 35 untuk variabel yang pada saat itu tidak dapat menyimpulkan tipenya Ini dapat menyebabkan beberapa kesalahan terlewatkan, misalnya _2 Aktifkan opsi 34 tetapi TypeScript akan memunculkan kesalahan setiap kali 35 disimpulkan _3
noImplicitOverride - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}42Saat bekerja dengan kelas yang menggunakan pewarisan, subkelas mungkin "tidak sinkron" dengan fungsi yang kelebihan beban saat diganti namanya di kelas dasar Misalnya, bayangkan Anda sedang memodelkan sistem sinkronisasi album musik _4 Kemudian ketika Anda menambahkan dukungan untuk daftar putar yang dihasilkan pembelajaran mesin, Anda memfaktorkan ulang kelas 43 untuk memiliki fungsi 'penyiapan' sebagai gantinya 5 Dalam hal ini, TypeScript tidak memberikan peringatan bahwa 44 pada 45 diharapkan menimpa fungsi di kelas dasar Menggunakan _42 Anda dapat memastikan bahwa sub-kelas tidak pernah keluar dari sinkronisasi, dengan memastikan bahwa fungsi yang menimpa menyertakan kata kunci 47 Contoh berikut telah mengaktifkan _42, dan Anda dapat melihat kesalahan yang diterima saat 47 tidak ada _6
Tidak Ada Pengembalian Implisit - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}50Saat diaktifkan, TypeScript akan memeriksa semua baris kode dalam suatu fungsi untuk memastikan mereka mengembalikan nilai _7
Tidak Tersirat Ini - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}_51Menyebabkan kesalahan pada pernyataan 'ini' dengan menyiratkan jenis 'apa saja' Misalnya, kelas di bawah mengembalikan fungsi yang mencoba mengakses 52 dan 53 - tetapi konteks untuk 54 dalam fungsi di 55, bukan turunan dari kelas Rectangle _8
noPropertyAccessFromIndexSignature - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}60Pengaturan ini memastikan konsistensi antara mengakses bidang melalui sintaks "titik" ( 61), dan "diindeks" ( 62) dan cara properti dideklarasikan dalam tipe Tanpa tanda ini, TypeScript akan memungkinkan Anda menggunakan sintaks titik untuk mengakses bidang yang tidak ditentukan _9 Mengaktifkan bendera akan menimbulkan kesalahan karena bidang yang tidak diketahui menggunakan sintaks titik, bukan sintaks yang diindeks _0 Tujuan dari flag ini adalah untuk memberi sinyal maksud dalam sintaks panggilan Anda tentang seberapa yakin Anda bahwa properti ini ada
noUncheckedIndexedAccess - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}63TypeScript memiliki cara untuk mendeskripsikan objek yang memiliki kunci yang tidak diketahui tetapi nilai yang diketahui pada suatu objek, melalui tanda tangan indeks _1 Mengaktifkan _63 akan menambahkan 09 ke bidang yang tidak dideklarasikan dalam jenis _2
Tidak. Penduduk Lokal yang Tidak Digunakan - ________11______66Laporkan kesalahan pada variabel lokal yang tidak digunakan _3
Tidak Ada Parameter yang Tidak Digunakan - ________11______67Laporkan kesalahan pada parameter yang tidak digunakan dalam fungsi _4
Ketat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}_16Bendera _16 memungkinkan berbagai perilaku pemeriksaan tipe yang menghasilkan jaminan yang lebih kuat atas kebenaran program. Mengaktifkannya sama dengan mengaktifkan semua opsi keluarga mode ketat, yang diuraikan di bawah ini. Anda kemudian dapat menonaktifkan pemeriksaan keluarga mode ketat individu sesuai kebutuhan Versi TypeScript yang akan datang dapat memperkenalkan pemeriksaan tambahan yang lebih ketat di bawah bendera ini, sehingga pemutakhiran TypeScript dapat menyebabkan kesalahan jenis baru di program Anda. Jika sesuai dan memungkinkan, bendera terkait akan ditambahkan untuk menonaktifkan perilaku tersebut
Terapkan Panggilan Ikatan Ketat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}72Saat disetel, TypeScript akan memeriksa bahwa metode fungsi bawaan 79, 80, dan 81 dipanggil dengan argumen yang benar untuk fungsi yang mendasarinya _5 Jika tidak, fungsi ini menerima argumen apa pun dan akan mengembalikan 35 _6
Jenis Fungsi Ketat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}73Saat diaktifkan, flag ini menyebabkan parameter fungsi diperiksa dengan lebih benar Berikut adalah contoh dasar dengan ________11______73 off _7 Dengan _73 aktif, kesalahan terdeteksi dengan benar _8 Selama pengembangan fitur ini, kami menemukan sejumlah besar hierarki kelas yang pada dasarnya tidak aman, termasuk beberapa di DOM. Oleh karena itu, pengaturan ini hanya berlaku untuk fungsi yang ditulis dalam sintaks fungsi, bukan yang ada dalam sintaks metode _9
Cek Null Ketat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}71Ketika _71 adalah 62, 97 dan 09 secara efektif diabaikan oleh bahasa. Ini dapat menyebabkan kesalahan tak terduga saat runtime Ketika _71 adalah 10, 97 dan 09 memiliki jenisnya sendiri yang berbeda dan Anda akan mendapatkan kesalahan jenis jika Anda mencoba menggunakannya di mana nilai konkret diharapkan Misalnya dengan kode TypeScript ini, _03 tidak memiliki jaminan bahwa itu benar-benar akan menemukan pengguna, tetapi Anda dapat menulis kode seolah-olah itu akan 0 Pengaturan _71 ke 10 akan menimbulkan kesalahan bahwa Anda belum membuat jaminan bahwa 06 ada sebelum mencoba menggunakannya 1 Contoh kedua gagal karena fungsi 07 array terlihat seperti penyederhanaan ini 2
Inisialisasi Properti Ketat - { "extends": "./configs/base", "files": ["main.ts", "supplemental.ts"]}_74Saat disetel ke true, TypeScript akan memunculkan kesalahan saat properti kelas dideklarasikan tetapi tidak disetel di konstruktor 3 Dalam kasus di atas
useUnknownInCatchVariables - ________11______77Di TypeScript 4. 0, dukungan ditambahkan untuk memungkinkan perubahan jenis variabel dalam catch clause dari 35 menjadi 24. Mengizinkan kode seperti 4 Pola ini memastikan bahwa kode penanganan error menjadi lebih komprehensif karena Anda tidak dapat menjamin bahwa objek yang dilempar adalah subkelas Error sebelumnya. Dengan bendera 77 diaktifkan, maka Anda tidak memerlukan sintaks tambahan ( 26) atau aturan linter untuk mencoba menerapkan perilaku ini
ModulIzinkan Akses Global Umd - { "extends": "./tsconfig", "compilerOptions": { "strictNullChecks": false }}31Jika disetel ke true, _31 memungkinkan Anda mengakses ekspor UMD sebagai global dari dalam bundel modul. File modul adalah file yang telah diimpor dan/atau diekspor. Tanpa opsi ini, menggunakan ekspor dari modul UMD memerlukan deklarasi impor Contoh kasus penggunaan untuk opsi ini adalah proyek web tempat Anda mengetahui bahwa pustaka tertentu (seperti jQuery atau Lodash) akan selalu tersedia saat runtime, tetapi Anda tidak dapat mengaksesnya dengan impor
Url Dasar - { "extends": "./tsconfig", "compilerOptions": { "strictNullChecks": false }}_33Memungkinkan Anda menyetel direktori dasar untuk menyelesaikan nama modul dengan benar Anda dapat menentukan folder root tempat Anda dapat melakukan keputusan file yang sebenarnya, misalnya 5 Dengan _34 dalam proyek ini TypeScript akan mencari file mulai dari folder yang sama dengan 72 6 Jika Anda bosan selalu mengimpor seperti 36 atau 37. Atau harus mengubah saat Anda memindahkan file, ini adalah cara terbaik untuk memperbaikinya Modul - { "extends": "./tsconfig", "compilerOptions": { "strictNullChecks": false }}_38Mengatur sistem modul untuk program. Lihat halaman referensi Modul untuk informasi lebih lanjut. Anda kemungkinan besar ingin 39 untuk proyek simpul Mengubah _38 mempengaruhi yang juga memiliki halaman referensi Berikut beberapa contoh keluaran untuk file ini 7
{ "extends": "./tsconfig", "compilerOptions": { "strictNullChecks": false } } |