Saya menambahkan paket npm baru ke proyek saya dan memerlukannya di salah satu modul saya.
Sekarang saya mendapatkan pesan ini dari webpack,
build modulesNote: The code generator has deoptimised the styling of "D:/path/to/project/node_modules/ramda/dist/ramda.js" as it exceeds the max of "100KB".
Apa artinya? Apakah saya perlu mengambil tindakan?
Jawaban:
Ini terkait dengan
compact
opsi Babel compiler, yang memerintahkan untuk "tidak menyertakan karakter spasi putih berlebihan dan terminator garis. Ketika diatur ke 'auto' compact diatur ke true pada ukuran input> 100KB." Secara default nilainya "otomatis", jadi mungkin itulah alasan Anda menerima pesan peringatan. Lihat dokumentasi Babel .Anda dapat mengubah opsi ini dari Webpack menggunakan parameter kueri . Sebagai contoh:
sumber
?compact=false
bukanquery
parameter. Misalnya:{test: /\.js$/, loaders: ['ng-annotate', 'babel?compact=false']}
false
. Untuk kasus seperti milik saya di mana format output penting, yang memiliki nilai. Seperti kebanyakan hal, itu tergantung. :)Ini tampaknya merupakan kesalahan Babel . Saya kira Anda menggunakan babel-loader, dan tidak termasuk perpustakaan eksternal dari tes loader Anda. Sejauh yang saya tahu, pesan itu tidak berbahaya, tetapi Anda tetap harus melakukan sesuatu seperti ini:
Silahkan lihat. Benarkah itu?
sumber
exclude: /node_modules/
.exclude
.Salah satu dari tiga opsi di bawah ini menghilangkan pesan (tetapi karena alasan berbeda dan dengan efek samping yang berbeda saya kira):
node_modules
direktori atau secara eksplisitinclude
direktori tempat aplikasi Anda berada (yang mungkin tidak mengandung file lebih dari 100KB)compact
ketrue
(sebenarnya nilai apa pun selain "otomatis")compact
kefalse
(lihat di atas)# 1 dalam daftar di atas dapat dicapai dengan mengecualikan
node_modules
direktori atau secara eksplisit termasuk direktori tempat aplikasi Anda berada.Misal dalam
webpack.config.js
:... atau dengan menggunakan
include: path.resolve(__dirname, 'app/')
(lagi dalamwebpack.config.js
).# 2 dan # 3 dalam daftar di atas dapat dicapai dengan metode yang disarankan dalam jawaban ini atau (preferensi saya) dengan mengedit
.babelrc
file. Misalnya:Diuji dengan pengaturan berikut:
sumber
Saya mencoba cara Ricardo Stuven tetapi tidak berhasil bagi saya. Apa yang berhasil pada akhirnya adalah menambahkan "compact": false ke file .babelrc saya:
sumber
lodash.js
, dan ini memperbaiki masalah.Untuk penjelasan lebih lanjut baca
THIS LINK
, itu adalah opsiBabel compiler
bahwa perintah untuk tidak memasukkan karakter spasi putih berlebihan dan terminator garis. beberapa waktu yang lalu ambangnya adalah100KB
tetapi sekarang500KB
.Saya menawarkan Anda menonaktifkan opsi ini di lingkungan pengembangan Anda, dengan kode ini dalam
.babelrc
file.Untuk lingkungan produksi
Babel
gunakan konfigurasi default yangauto
.sumber
Dalam reaksi / redux / webpack / babel build memperbaiki kesalahan ini dengan menghapus jenis tag tag teks / babel
mendapat kesalahan:
tidak ada kesalahan:
sumber
di webpack 4 dengan beberapa aturan modul Anda hanya akan melakukan sesuatu seperti ini di aturan .js Anda:
sumber
Ini mungkin bukan kasus pertanyaan OP asli, tetapi: jika Anda melebihi ukuran maks default, ini mungkin merupakan gejala dari beberapa masalah lain yang Anda miliki. dalam kasus saya, saya memiliki peringatan, tetapi akhirnya berubah menjadi KESALAHAN FATAL: MarkCompactCollector: salinan semi-ruang, mundur dalam gen lama Alokasi gagal - JavaScript menumpuk di memori. alasannya adalah bahwa saya secara dinamis mengimpor modul saat ini , jadi ini berakhir dengan loop tanpa akhir ...
sumber
require('../../../' + a + '/' + b)
). Menghapusnya memecahkan masalah (dan tidak akan pernah kembali).