Vue+Type Script+環境設定(1)
2003 ワード
本番環境の構成
まず、本番環境の導入を参照して、
生産環境を指定するには、DefinePluginを使用します.
Vueなどのライブラリは、コードレベルでもいくつかの本番環境のフラグに依存しています.
注意すべきは、DefinePluginは実際に直接置換を使用しているからです.私たちは次のような過程をしています.
したがって、
コードの使用のために他のグローバル構成変数を指定することもできます.
UglifyJsPluginを使用してJSコードを圧縮
公式ドキュメント:UglifyJsPlugin取付 導入モジュール
詳細については、上記の公式ドキュメントを参照してください.
Vuライブラリをパッケージ化しない
依存するライブラリをbundleにパッケージします.jsは,対応ライブラリが提供するCDNの利用に不便である.そこでここでは、は、 は、その後、 .
まず、本番環境の導入を参照して、
webpack.config.dev.js
をwebpack.config.dev.js
と名付けてコピーします.生産環境を指定するには、DefinePluginを使用します.
Vueなどのライブラリは、コードレベルでもいくつかの本番環境のフラグに依存しています.
DefinePlugin
によって処理することができる.DefinePlugin Vueは主にNode
のprocess.env.NODE_ENV
に依存しているので、plugins
ブロックに構成を追加することができます. plugins:[
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify("production")
}),
]
注意すべきは、DefinePluginは実際に直接置換を使用しているからです.私たちは次のような過程をしています.
//
if (process.env.NODE_ENV === "production") {
console.log('Debug info')
}
//
if("production" === "production"){
}
したがって、
NODE_ENV
自体に文字列が含まれる必要があります.したがって、上記のJSON.stringify("production")
を'"production"'
に変更することもできる.コードの使用のために他のグローバル構成変数を指定することもできます.
UglifyJsPluginを使用してJSコードを圧縮
公式ドキュメント:UglifyJsPlugin
UglifyJsPlugin
,$npm i -D uglifyjs-webpack-plugin
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
plugins
リストに登録:plugins:[
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify("production")
}),
new UglifyJsPlugin({}),
]
詳細については、上記の公式ドキュメントを参照してください.
Vuライブラリをパッケージ化しない
依存するライブラリをbundleにパッケージします.jsは,対応ライブラリが提供するCDNの利用に不便である.そこでここでは、
Vue
ライブラリをbundle.js
にパッケージ化しない方法を紹介します.externals
の構成ブロックに直接宣言を追加することができる. externals:{
vue: "Vue"
},
index.html
に直接対応するリソースを追加する参照は、以下の通りである:
```html