この記事では主に vue-cli の webpack の設定方法を紹介します。この記事は主に vue の config フォルダー内の関連コードと config のファイル構造を分析します。興味のある方はこの記事を参照してください。
最近私は webpack を勉強しています。突然、vue-cli で webpack がどのように設定されているかを知りたくなり、関連記事をたくさん読んだので、vue-cli の設定についてもいくつか思いつきました。ことわざにあるように、「仕事をうまくやりたければ、まず道具を研ぎ澄まさなければなりません」!この記事では主に vue の config フォルダー内の関連コードを分析します
まず、config のファイル構造を見てみましょう:
|-config |---dev.env.js |---index.js |---prod.env.js
vue プロジェクト フォルダーを開くと、フォルダー ファイルの下に 3 つのファイルがはっきりと表示されます。 「dev.env.js」、「index.js」、「prod.env.js」、まず prod.env.js ファイルを開いて内容を確認します。
'use strict' module.exports = { NODE_ENV: '"production"' }
prod.env.js 内容は非常に優れています。これは、実行環境が「production (本番環境)」であることを示すオブジェクトをエクスポートするだけです。次に、対応する「dev.env.js」ファイルを見てみましょう。 webpack-merge モジュールが最初に導入されました。このモジュールの機能は、2 つの設定ファイル オブジェクトをマージし、新しい設定ファイルを生成することです。これは、es6 の object.assign() に似ています。
vue-cli は、いくつかの共通の設定を抽出して 1 つのファイルに置き、異なるコードを設定します。ドキュメントにあるように、「webpack は非反復 (繰り返さない - DRY) の原則に従っており、同じものを設定します。」 "
さて、コードに戻りましょう。webpack-merge を導入した後、このファイルは prod.env.js も導入し、prod.env.js の構成を新しい構成と結合します。つまり、開発環境 (開発) がマージされることを指定します。 (なぜこれが行われるのかよくわかりません。マージせずに直接 module.exports を書いても問題ありません。正常なダウングレードのためでしょうか?)
もう 1 つの注意点は、開発と運用を二重引用符で囲む必要があることです。それ以外の場合は、二重引用符で囲む必要があります。エラーが報告されます! ! ! ={NODE_ENV:'"development'}
'use strict' //引入webpack-merge模块 const merge = require('webpack-merge') //引入刚才打开的prod.env.js const prodEnv = require('./prod.env') module.exports = merge(prodEnv, { NODE_ENV: '"development"' })
errorOverlayクエリエラーnotifyOnErrors通知エラー
、ポーリングは開発サーバーに関連する設定です。webpackが提供する開発サーバーはファイルの変更を監視できますが、場合によってはポーリングを設定できません。 poll ) を解決する
useEslint eslint を使用するかどうか
showEslintErrorsInOverlay eslint エラー プロンプトを表示するかどうか
ビルド時の構成内容を見てみましょう:
index コンパイル後の Index.html へのパス。path.resolve(__dirname) が path.resolve(__dirname, ' で参照します)。 ./dist') これは、index.js が配置されている絶対パスであり、パス「../dist」(ノード関連の知識)、
assetsRoot がパッケージ化された後のファイル ルート パス (assetsSubDirectory の場合) を探します。とassetsPublicPathはdevと同じ、
VUE2は二次的な州と都市の連携選択を実装
以上がvue-cli 設定ファイル (詳細なチュートリアル)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。