ツリーシェーキングは、ビルドプロセス中に死んだコードを排除するために使用される手法であり、アプリケーションのサイズを大幅に削減できます。 Vue.jsでは、ES6モジュールの構文をサポートするWebpackのようなモジュールバンドラーを使用している場合、ツリーシェーキングを効果的に使用できます。これがあなたがそれをセットアップする方法です:
ES6モジュールの使用:VUEコンポーネントおよびその他のJavaScriptファイルがES6モジュールの構文を使用して記述されていることを確認します。たとえば、 module.exports
などのCommonJS構文の代わりに、 export default
またはexport
を使用します。
<code class="javascript">// Before (CommonJS) module.exports = { template: '<div>My Component</div>' } // After (ES6 Modules) export default { template: '<div>My Component</div>' }</code>
webpackの構成:webpackを構成する必要があります。ツリーシェーキング用のES6モジュール構文を認識して利用する必要があります。 webpack.config.js
に次の設定があることを確認してください。
<code class="javascript">module.exports = { //... other configurations optimization: { usedExports: true, minimize: true } }</code>
生産モードの使用:アプリケーションを構築するときは、生産モードを使用していることを確認してください。これにより、木が振るなどの最適化が可能になります。
<code class="bash">vue-cli-service build --mode production</code>
副作用を避ける:副作用のあるコードは、効果的な木の揺れを防ぐことができます。モジュールを副作用から解放してください。つまり、インポートされたが使用されていないときに操作を実行すべきではありません。たとえば、自動実行機能を避けます。
<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>
vue cliを使用してBabel :Vue CLIを使用している場合は、ES6モジュールの構文を保存するようにBabelを構成してください。 babel.config.js
を更新して以下を更新します。
<code class="javascript">module.exports = { presets: [ ['@babel/preset-env', { modules: false }] ] }</code>
これらの手順に従うことにより、Vue.jsプロジェクトでTree Shakingを効果的に使用して、未使用のコードを削除できます。
vue.jsプロジェクトで効果的にツリーシェーキングを実装するには、いくつかのベストプラクティスが含まれます。
import
ステートメントとexport
ステートメントを一貫して使用します。これにより、バンドラーが使用されるモジュールを正しく識別できることが保証されます。輸入を最適化する:インポートするものを正確にしてください。モジュール全体をインポートする代わりに、必要なもののみをインポートします。例えば:
<code class="javascript">// Instead of: import * as VueRouter from 'vue-router'; // Use: import { createRouter, createWebHistory } from 'vue-router';</code>
npm run build
)を構築して、木の揺れやその他の最適化が適用されるようにします。optimization.usedExports
がtrue
に設定されていることを確認してください。これらのプラクティスを順守することにより、Vue.jsプロジェクトで揺れを揺さぶる効果を最大化できます。
木の揺れがvue.jsアプリケーションで効果的に機能していることを確認するには、次の手順に従ってください。
バンドルサイズの比較:開発モードと生産モードでアプリケーションを構築します。木の揺れが機能している場合、生産ビルドは大幅に小さくする必要があります。
<code class="bash"># Development build vue-cli-service build --mode development # Production build vue-cli-service build --mode production</code>
Webpackバンドルアナライザーを使用します。このツールは、バンドルのサイズを視覚化し、どのモジュールが含まれているかを確認するのに役立ちます。プロジェクトをインストールして、プロジェクトに追加できます。
<code class="bash">npm install --save-dev webpack-bundle-analyzer</code>
次に、 vue.config.js
を変更して、アナライザーを含めます。
<code class="javascript">const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer'); module.exports = { configureWebpack: { plugins: [ new BundleAnalyzerPlugin() ] } }</code>
プロジェクトを構築した後、生成されたレポートを開いて、未使用のモジュールが除外されているかどうかを確認します。
optimization.usedExports
化の場合、未使用のエクスポートの警告を記録します。これらの方法を使用することにより、Tree ShakingがVue.jsアプリケーションから未使用のコードを効果的に削除しているかどうかを確認できます。
いくつかのツールとプラグインは、vue.jsで木の揺れを強化できます:
vue-cli-service build
)を使用して、木の揺れを自動的に有効にします。Webpackバンドルアナライザー:このプラグインは、バンドルのサイズを視覚化し、どのモジュールが含まれているかを特定するのに役立ちます。木の揺れが効果的であることを確認するのに役立ちます。
<code class="bash">npm install --save-dev webpack-bundle-analyzer</code>
BABEL :ES6モジュールの構文を保存するようにBABELを構成すると、木の揺れが改善されます。次の構成を使用します。
<code class="javascript">module.exports = { presets: [ ['@babel/preset-env', { modules: false }] ] }</code>
terserwebpackplugin :Webpackの一部であるこのプラグインは、コードを模倣して最適化します。木の揺れをさらに強化するように構成できます。
<code class="javascript">const TerserPlugin = require('terser-webpack-plugin'); module.exports = { optimization: { minimizer: [new TerserPlugin({ terserOptions: { compress: { pure_funcs: ['console.log'] } } })] } }</code>
これらのツールとプラグインを活用することにより、Vue.JSプロジェクトで木の揺れを大幅に強化し、より小さく効率的なバンドルにつながることができます。
以上がVue.jsでツリーシェーキングを使用して未使用のコードを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。