Saya menerima peringatan ...
Dukungan eksperimental untuk dekorator adalah fitur yang dapat berubah dalam rilis mendatang. Setel opsi 'experimentalDecorators' `untuk menghapus peringatan ini.
... walaupun compilerOptions di tsconfig.json saya memiliki pengaturan berikut:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
Apa yang aneh adalah bahwa beberapa kelas acak yang menggunakan dekorator tidak menunjukkan peringatan itu, tetapi sisanya dalam proyek yang sama melakukannya.
Apa yang dapat menyebabkan perilaku seperti itu di kompiler TypeScript?
.ts
file ke proyek sudut secara manual; jika demikian, kompilasi TS default bertentangan dengan Angular CLI. Klik kanan file -> Properti -> Bangun Tindakan: Tidak Ada. Kemudian restart VS jika perlu.code .
) di direktori yang salah. Semuanya tampak OK - saya melihat dan dapat mengedit semua file saya - jadi pada awalnya saya tidak melihat ada yang "salah". Tapi saya mendapat peringatan "Dekorator Eksperimental" bodoh itu pada satu - dan hanya satu! - Komponen sudut. Saya keluar dari VSCode, restart (code .
lagi) di direktori CORRECT (root proyek Angular saya) .. dan peringatan itu hilang.Jawaban:
Meskipun VS Code adalah editor yang hebat untuk proyek-proyek TypeScript, itu membutuhkan tendangan setiap sekarang dan lagi. Seringkali, tanpa peringatan, file-file tertentu membuatnya panik dan mengeluh. Sebagian besar perbaikannya tampaknya untuk menyimpan dan menutup semua file yang terbuka, lalu buka
tsconfig.json
. Setelah itu Anda harus dapat membuka kembali file yang menyinggung tanpa kesalahan. Jika tidak berhasil, busa, bilas, dan ulangi.Jika Anda
tsconfig.json
menentukan file sumbernya menggunakanfiles
array, IntelliSense hanya akan berfungsi dengan benar jika file yang dimaksud direferensikan sehingga VS Code dapat menemukannya dengan melintasi susunan file input.Sunting: Perintah 'reload window' (ditambahkan berabad-abad lalu sekarang) harus menyelesaikan masalah ini sekali dan untuk semua.
sumber
xproj
dantsconfig
, saya melewatkan fakta bahwa folder dengan file skrip saya terdaftar diexclude
bagiantsconfig
. Semoga ini bisa membantu seseorang.Saya harus menambahkan yang berikut ini di file settings.json vscode untuk menghapus peringatan.
"javascript.implicitProjectConfig.experimentalDecorators": true
VSCode -> Preferences -> Pengaturan
sumber
ctrl + ,
tombol pintas untuk membuka pengaturan pengguna. pada pengaturan pengguna klik 3 titik (...
) lalu klik sembulanOpen settings.json
untuk membukasettings.json
Kesalahan ini juga terjadi ketika Anda memilih folder "src" untuk folder ruang kerja Anda.
Ketika folder root, folder di mana "src", "node_modules" berada dipilih, kesalahan menghilang
sumber
File -> Preferensi -> Pengaturan
sumber
di dalam proyek Anda, buat file tsconfig.json, lalu tambahkan baris ini
sumber
harus menambahkan
typescript.tsdk
ke saya.vscode/settings.json
:sumber
.vscode/settings.json
sebagai per ini.vscode
folder (saya tidak tahu mengapa - saya seorang backend dev, tinggalkan saya sendiri!), Jadi saya membuat satu di folder root dengan katasettings.json
file.Dalam VSCode, Buka File => Preferensi => Pengaturan (atau Kontrol + koma) dan itu akan membuka file Pengaturan Pengguna. Cari "javascript.implicitProjectConfig.experimentalDecorators": true dan centang kotak centang untuk eksperimentalDecorators ke file dan itu harus memperbaikinya. Itu untuk saya.
sumber
Dalam Visual Code Studio Buka File >> Preferensi >> Pengaturan, Cari "dekorator" di bidang pencarian dan Periksa opsi seperti pada gambar.
sumber
Buka
settings.json
file di lokasi berikut<project_folder>/.vscode/settings.json
atau Anda dapat membuka file dari menu seperti yang disebutkan di bawah ini
VSCode -> File -> Preferences -> Workspace Settings
Kemudian tambahkan baris berikut dalam
settings.json
fileItu saja. Anda tidak akan melihat peringatan / kesalahan terkait ' eksperimenDecorator '
sumber
Jawaban ini ditujukan untuk orang-orang yang menggunakan proyek Javascript dan bukan yang skrip . Alih-alih file tsconfig.json Anda dapat menggunakan file jsconfig.json .
Dalam kasus tertentu memiliki dekorator yang memperingatkan Anda ingin menulis di dalam file:
Jika ditanya perilaku buggy, selalu lebih baik untuk menentukan "include" dalam file konfigurasi, dan restart editor. Misalnya
sumber
Akan menyelesaikan masalah ini.
sumber
settings.json
(baik pengguna atau ruang kerja). Anda juga dapat menggunakan pengaturan gui, seperti jawaban iniTambahkan baris berikut di tsconfig.json dan restart VS Code.
sumber
Bukan untuk memutar balik poin tetapi pastikan untuk menambahkan yang berikut ke
di bawah File >> Preferensi >> Pengaturan
"javascript.implicitProjectConfig.experimentalDecorators": true
ini memperbaiki masalah bagi saya, dan saya mencoba beberapa saran yang saya temukan di sini dan di tempat lain.
sumber
Saya punya masalah ini baru-baru ini di bawah Visual Studio 2017 - ternyata itu disebabkan oleh "fitur" dari VS - mengabaikan tsconfig.json ketika tindakan Build tidak diatur ke Konten .
Jadi mengubah tindakan Bangun ke Konten dan memuat ulang solusi memecahkan masalah.
sumber
Demi kejelasan dan kebodohan.
1) Buka .vscode / settings.json.
2) Tambahkan "typescript.tsdk": "node_modules / typescript / lib" di atasnya.
3) Simpan.
4) Mulai ulang Kode Visual Studio.
sumber
Jika Anda bekerja di Visual studio. Anda dapat mencoba perbaikan ini
Tambahkan TypeScriptExperimentalDecorators ke bagian ini seperti yang ditunjukkan pada gambar
lihat lebih detail di lokasi ini .
sumber
Jika Anda menggunakan cli untuk mengkompilasi file * .ts, Anda dapat mengatur experimentalDecorators menggunakan perintah berikut:
sumber
Silakan periksa Anda menentang di Kode VS Anda folder dari seluruh proyek dan tidak hanya folder src, karena jika Anda hanya membuka src, maka file ts.config.json (terletak di folder proyek) tidak akan berada dalam ruang lingkup, dan VS tidak akan mengenali parameter dekorator eksperimental.
Dalam kasus saya ini memperbaiki semua masalah yang terkait dengan masalah ini.
sumber
src
dannode_modules
, daripada memilih hanyasrc
.sumber
Buka folder seluruh proyek alih-alih nama-proyek / src
sumber
Saya mengoreksi peringatan dengan menghapus "baseUrl": "", dari file tsconfig.json
sumber
Anda mungkin mengalami masalah ini jika Anda membuka file TS yang ada di luar proyek. Misalnya, saya menggunakan lerna dan membuka file dari paket lain. Meskipun paket lain itu memiliki tsconfig sendiri dengan dekorator eksperimental, VsCode tidak menghargainya.
sumber
Saya menghadapi masalah yang sama saat membuat Layanan Injeksi di Angular 2. Saya memiliki semua hal di tsconfig.json. Masih saya mendapatkan kesalahan ini di baris ColorsImmutable.
sumber
Jika Anda menggunakan Deno JavaScript dan runtime TypeScript dan Anda mengaktifkan eksperimentalDecorators: true di tsconfig.json atau pengaturan ide VSCode. Itu tidak akan bekerja. Menurut persyaratan Deno, Anda perlu menyediakan tsconfig sebagai flag saat menjalankan file Deno. Lihat Opsi Penyusun TypeScript Kustom
Dalam kasus khusus saya, saya menjalankan tes Deno dan digunakan.
Jika itu file, Anda memiliki sesuatu seperti
tsconfig.json saya
sumber
Saya menambahkan opsi ini ke tsconfig.json,
"baseUrl": "front-end"
Ganti front-end dengan nama proyek clari sudut Anda.sumber
Anda juga dapat mencoba
ng build
. Saya baru saja membangun kembali aplikasi dan sekarang tidak sesuai.sumber
Jadi ternyata Anda bisa menyiasatinya dengan mencocokkan nama modul Anda dengan nama file. Jika Anda memiliki nama modul BankSpecialtyModule maka nama file seharusnya. bank-speciality.module.ts
sumber
Saya mengalami kesalahan ini ketika saya membuat modul baru dan memindahkan file * .module.ts dan * -routing.module.ts ke folder lain. Setelah saya menghapus dua file dan membuat modul pada folder baru berfungsi dengan baik. Environment Angular Version 9 dan Angular CLI versi 9.1.0
sumber
Bagi saya, kesalahan ini "Dukungan eksperimental untuk dekorator adalah fitur yang dapat berubah dalam rilis mendatang. (Dll)" hanya terjadi di VS Code dalam proyek Angular dan hanya ketika membuat Layanan baru.
Solusi di atas: "Dalam Visual Code Studio Buka File >> Preferensi >> Pengaturan, Cari" dekorator "di bidang pencarian dan Memeriksa opsi JavaScript› Implisit Proyek Konfigurasi: Dekorator Eksperimental "menyelesaikan masalah.
Selain itu, menghentikan layanan ng di jendela terminal dan menyalakannya kembali membuat kesalahan hilang setelah kompilasi ulang.
sumber