Rumah >hujung hadapan web >View.js >Bagaimanakah saya menggunakan pohon gemetar di vue.js untuk menghapuskan kod yang tidak digunakan?
Gegaran pokok adalah teknik yang digunakan untuk menghapuskan kod mati semasa proses binaan, yang dapat mengurangkan saiz permohonan anda dengan ketara. Dalam vue.js, goncangan pokok boleh digunakan dengan berkesan apabila anda menggunakan modul modul seperti webpack yang menyokong sintaks modul ES6. Inilah cara anda dapat menetapkannya:
Gunakan modul ES6 : Pastikan komponen VUE anda dan fail JavaScript lain ditulis menggunakan sintaks modul ES6. Sebagai contoh, bukan sintaksis commonjs seperti module.exports
, gunakan export default
atau export
.
<code class="javascript">// Before (CommonJS) module.exports = { template: '<div>My Component</div>' } // After (ES6 Modules) export default { template: '<div>My Component</div>' }</code>
Konfigurasikan Webpack : Webpack perlu dikonfigurasi untuk mengenali dan menggunakan sintaks modul ES6 untuk menggoncang pokok. Pastikan webpack.config.js
anda mempunyai tetapan berikut:
<code class="javascript">module.exports = { //... other configurations optimization: { usedExports: true, minimize: true } }</code>
Gunakan mod pengeluaran : Apabila membina aplikasi anda, pastikan anda menggunakan mod pengeluaran, yang membolehkan pengoptimuman seperti goncangan pokok:
<code class="bash">vue-cli-service build --mode production</code>
Elakkan kesan sampingan : Kod dengan kesan sampingan boleh menghalang pohon yang berkesan. Pastikan modul anda bebas dari kesan sampingan, bermakna mereka tidak boleh melakukan operasi apabila diimport tetapi tidak digunakan. Sebagai contoh, elakkan fungsi pelaksanaan automatik:
<code class="javascript">// Bad practice (side effect) console.log('This will prevent tree shaking'); // Good practice (no side effect) export function logMessage() { console.log('This can be tree shaken if not used'); }</code>
Gunakan Vue CLI dengan Babel : Jika anda menggunakan Vue CLI, pastikan untuk mengkonfigurasi Babel untuk mengekalkan sintaks modul ES6. Kemas kini babel.config.js
anda untuk memasukkan:
<code class="javascript">module.exports = { presets: [ ['@babel/preset-env', { modules: false }] ] }</code>
Dengan mengikuti langkah -langkah ini, anda boleh menggunakan goncangan pokok dengan berkesan dalam projek Vue.js anda untuk menghapuskan kod yang tidak digunakan.
Melaksanakan pokok berjabat dengan berkesan dalam projek Vue.js melibatkan beberapa amalan terbaik:
import
dan export
secara konsisten di seluruh kod anda. Ini memastikan bahawa bundler dapat mengenal pasti modul yang betul.Mengoptimumkan Import : Jadilah tepat dengan apa yang anda import. Daripada mengimport keseluruhan modul, import hanya apa yang anda perlukan. Contohnya:
<code class="javascript">// Instead of: import * as VueRouter from 'vue-router'; // Use: import { createRouter, createWebHistory } from 'vue-router';</code>
npm run build
) untuk memastikan pokok gemetar dan pengoptimuman lain digunakan.optimization.usedExports
ditetapkan kepada true
.Dengan mematuhi amalan ini, anda boleh memaksimumkan keberkesanan pokok yang gemetar dalam projek Vue.js anda.
Untuk mengesahkan bahawa pohon gemetar berfungsi dengan berkesan dalam aplikasi Vue.js anda, ikuti langkah -langkah berikut:
Bandingkan saiz bundle : Bina aplikasi anda dalam mod pembangunan dan pengeluaran. Pembentukan pengeluaran harus lebih kecil jika pohon berjabat berfungsi.
<code class="bash"># Development build vue-cli-service build --mode development # Production build vue-cli-service build --mode production</code>
Gunakan Webpack Bundle Analyzer : Alat ini membantu anda memvisualisasikan saiz bundle anda dan lihat modul mana yang disertakan. Anda boleh menambahkannya ke projek anda dengan memasangnya:
<code class="bash">npm install --save-dev webpack-bundle-analyzer</code>
Kemudian, ubah suai vue.config.js
anda untuk memasukkan penganalisis:
<code class="javascript">const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer'); module.exports = { configureWebpack: { plugins: [ new BundleAnalyzerPlugin() ] } }</code>
Selepas membina projek anda, buka laporan yang dihasilkan untuk melihat sama ada modul yang tidak digunakan dikecualikan.
optimization.usedExports
diaktifkan.Dengan menggunakan kaedah ini, anda boleh mengesahkan sama ada pokok gemetar secara berkesan mengeluarkan kod yang tidak digunakan dari aplikasi Vue.js anda.
Beberapa alat dan plugin dapat meningkatkan pohon berjabat di vue.js:
vue-cli-service build
) untuk membolehkan pokok berjabat secara automatik.Webpack Bundle Analyzer : Plugin ini membantu memvisualisasikan saiz bundle anda dan mengenal pasti modul mana yang disertakan. Ia berguna untuk mengesahkan bahawa pohon berjabat itu berkesan.
<code class="bash">npm install --save-dev webpack-bundle-analyzer</code>
Babel : Mengkonfigurasi Babel untuk memelihara sintaks modul ES6 dapat meningkatkan goncangan pokok. Gunakan konfigurasi berikut:
<code class="javascript">module.exports = { presets: [ ['@babel/preset-env', { modules: false }] ] }</code>
TERSERWEBPackPlugin : Plugin ini, sebahagian daripada webpack, meminimumkan dan mengoptimumkan kod anda. Ia boleh dikonfigurasikan untuk meningkatkan lagi pohon gemetar.
<code class="javascript">const TerserPlugin = require('terser-webpack-plugin'); module.exports = { optimization: { minimizer: [new TerserPlugin({ terserOptions: { compress: { pure_funcs: ['console.log'] } } })] } }</code>
Dengan memanfaatkan alat dan plugin ini, anda dapat meningkatkan pohon yang signifikan dalam projek Vue.js anda, yang membawa kepada berkas yang lebih kecil dan lebih cekap.
Atas ialah kandungan terperinci Bagaimanakah saya menggunakan pohon gemetar di vue.js untuk menghapuskan kod yang tidak digunakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!