Baru-baru ini, ketika saya mengkompilasi file scss saya, saya mendapatkan kesalahan. Pesan kesalahan mengatakan:
Daftar peramban: caniuse-lite sudah usang. Silakan jalankan perintah selanjutnya
npm update caniuse-lite browserslist
Pertama, seperti yang tertulis di pesan, saya menjalankan npm update caniuse-lite browserslist
tetapi tidak memperbaiki masalah. Saya menghapus seluruh direktori nod-modules dan menginstal lagi, juga saya memperbarui seluruh folder npm update
tetapi tidak ada yang menyelesaikan masalah. Saya juga menginstal ulang autoprefixer dan daftar browser tetapi tidak satupun dari mereka menyelesaikan masalah.
Jika saya menghapus
"options": {
"autoPrefix": "> 1%"
}
dari saya compilerconfig.json
, semuanya berfungsi dengan baik yang berarti mungkin itu terkait dengan autoprefixer. Juga, saya secara manual mengubah versi paket ke versi terbaru package.json
dan menginstal ulang tetapi tidak berhasil.
sumber
Coba ini memecahkan masalah saya
npx browserslist@latest --update-db
sumber
Untuk Pengembang Angular
Meskipun, saya menjawab ini sangat terlambat. Saya memiliki kebiasaan buruk memeriksa changelogs dari setiap perpustakaan yang saya gunakan 😀 dan saat memeriksa catatan rilis CLI Angular, saya menemukan bahwa mereka merilis tambalan baru kemarin (9 Jan 2020) yang memperbaiki masalah ini.
https://github.com/angular/angular-cli/releases/tag/v8.3.22
Jadi ketika Anda akan menjalankan
ng update
, Anda harus mendapatkan pembaruan untuk@angular/cli
:Dan menjalankannya
ng update @angular/cli
akan memperbaiki peringatan ini.Bersulang!
sumber
Saya menemukan jalan pintas daripada melalui
vs code appData/webCompiler
, saya menambahkannya sebagai ketergantungan pada proyek saya dengan cmd ininpm i caniuse-lite browserslist
. Tetapi Anda mungkin menginstalnya secara global untuk menghindari penambahannya ke setiap proyek.Setelah instalasi, Anda dapat menghapusnya dari proyek Anda
package.json
dan melakukannyanpm i
.Memperbarui:
Jika, solusi Di atas tidak memperbaikinya. Anda dapat menjalankannya
npm update
, karena ini akan meningkatkan paket yang tidak lagi digunakan / usang.catatan:
Setelah Anda menjalankan pembaruan npm, mungkin ada dependensi yang hilang. Lacak kesalahan dan instal dependensi yang hilang. Punyaku adalah nodemon, yang aku perbaiki
npm i nodemon -g
sumber
Kelanjutan dari jawaban di atas .
Memiliki "kesalahan plugin" yang sama dengan @MehrdadBabaki. Saya mencopot kompiler web, menghapus folder AppData WebCompiler yang disebutkan di atas, lalu membuka kembali VS2019 dan menginstal ulang kompiler web.
LALU saya pergi ke folder WebCompiler lagi dan melakukan
npm i autoprefixer@latest
npm i caniuse-lite@latest
dannpm i caniuse-lite browserslist@latest
sumber
npm --depth 9999 update
memperbaiki masalah untuk saya - tampaknya karenapackage-lock.json
bersikeras pada versi yang sudah ketinggalan zaman.sumber
npm --depth 99 update caniuse-lite browserslist
disebabkanJavaScript heap out of memory
dalam proyek saya, tetapinpm --depth 20 update caniuse-lite browserslist
berjalan cepat dan menyelesaikan kesalahan dalam kasus saya.Dalam kasus saya, saya menghapus
caniuse-lite
,browserslist
folder darinode_modules
.Kemudian saya mengetik perintah berikut untuk menginstal paket.
bekerja dengan baik.
sumber
npm i browserslist caniuse-lite --save
Menghapus
node_modules
danpackage-lock.json
dannpm i
memecahkan masalah bagi saya.sumber
Seperti disebutkan dalam jawaban Scott Kuhl, masalah ini disebutkan di https://github.com/madskristensen/WebCompiler/issues/413
Bagi saya, menjalankan perintah
npm i caniuse-lite- browserslist
hanya berfungsi sekitar 1/2 hari sebelum itu menjadi masalah lagi.Solusi berikut, yang disebutkan dalam posting, bekerja jauh lebih baik. Ini memperbarui file node.js sehingga digunakan
console.log
sebagai pengganticonsole.warn
saat mengembalikan kesalahan ini.Anda dapat memperbarui file ini secara manual yang terletak di C: \ Users \ [Username] \ AppData \ Local \ Temp \ WebCompiler [VersionNumber] \ node_modules \ browserlist
Atau, agar dilakukan secara otomatis, tambahkan berikut ini ke file .csproj Anda dengan:
</Project>
tag akhir dan sebelum paket kompiler web build diimpor.sumber
Saya telah memperbaiki masalah ini dengan melakukan, langkah demi langkah:
node_modules
package-lock.json
,npm --depth 9999 update
npm install
sumber
package-lock.json
saat melepas karena dapat menyebabkan perubahan yang merusak dan harus dihindari.Saya memiliki masalah yang sama juga perintah ini bekerja untuk saya
npm i autoprefixer@latest
Ini secara otomatis menambahkan ketergantungan
package.json
danpackage-lock.json
file seperti di bawah ini:package.json
package-lock.json
sumber
Saya tidak yakin di mana masalah saya, tapi saya yakin itu karena saya menggunakan paket global yang sama dari npm dan Yarn.
Saya mencopot semua paket global npm, lalu ketika menggunakan perintah benang sekali lagi, masalahnya hilang.
Untuk melihat paket global diinstal ...
untuk npm:
untuk Benang:
Saya kemudian menghapus setiap paket yang saya lihat di daftar npm, menggunakan:
sumber
Jawaban dari @Alexandr Nil aman, dan efektif untuk saya
Saya menulis sebagai jawaban lengkap karena mudah untuk melewatkan komentarnya.
Ini bagus karena:
Tidak ada penghapusan
package-lock.json
. Menghapus yang membuat Anda rentan terhadap banyak paket yang ditingkatkan dengan perubahan yang merusak.Ini eksplisit dan sangat terbatas pada hal-hal yang akan diperbarui.
Ini menghindari kedalaman yang sangat besar dari 99 atau 9999 yang akan bekerja pada beberapa proyek dan sistem, tetapi tidak pada yang lain. Jika Anda membatasi kedalaman pada angka yang terlalu kecil, itu tidak akan merusak apa pun. Anda dapat meningkatkan kedalaman dan mencoba lagi, hingga proyek berhasil dikompilasi.
sumber
Banyak yang menyarankan Anda untuk menghapus
package-lock.json
atauyarn.lock
. Ini jelas ide yang buruk!Saya menggunakan Yarn dan saya bisa memperbaiki masalah ini dengan hanya menghapus entri
caniuse-db
dancaniuse-lite
di sayayarn.lock
dan melakukan ayarn
.Tidak perlu merusak fungsi utama lockfile dengan menghapusnya.
sumber
Saya menurunkan versi node dari 12 menjadi 10
EDIT
Kesalahan ini terjadi pada saya karena saya menggunakan node versi 12. Ketika saya menurunkan versi ke versi 10.16.5 kesalahan ini berhenti. Error ini terjadi di local env saya, tapi pada prod dan staging tidak terjadi. Dalam prod dan versi node staging adalah 10.x jadi saya hanya melakukan ini dan saya tidak perlu memperbarui paket apa pun di package.json saya
sumber
Untuk memperbaiki masalah Anda dapat mengetikkan perintah di bawah ini:
sumber
Jika Anda menggunakan benang:
Bantuan untukku
sumber
Solusi minimal yang berhasil untuk saya untuk proyek saat ini
hapus
node_modules/browserslist
direktori dalam proyeksekarang
tidak lagi menghasilkan pesan itu
sumber
npm install
/npm ci
?Di Mac, saya menghapus node_modules dan package-lock.json, lalu menjalankan npm install dan memperbaiki masalah saya.
sumber
package-lock.json
. Hal ini dapat menyebabkan perubahan yang merusak dan harus dihindari.Dalam kasus saya ini berfungsi dengan baik ...
sudo npm i -g browserslist caniuse-lite
sumber
sudo
dengannpm install -g
karena ini dapat menyebabkan masalah izin. Jika Anda tidak dapat menginstal modul secara global, ini memang disebabkan oleh masalah izin yang sudah ada. Pencarian SO akan membantu dengan cara mengatasinya.