Webpack-ES 6、AMD、CommonJSのサポートをテスト
3431 ワード
1検証
以上の3つの
2.プロファイル上書きの作成
実行
これは
実際にコードを書くときは、
あなたが
②修正
注意!!!インストールされた
その後
パッケージされたjsファイルは私たちの構成に従ってdistディレクトリの下に置いて、htmlファイルを作成して、パッケージされたjsファイルを参照して、F 12を開けて効果を見ることができます
webpack
仕様サポートwebpack
サポートES6
,CommonJS
,AMD
仕様vendor
フォルダを作成します.minus.js
、multi.js
およびsum.js
は、それぞれCommonJS
、AMD
およびES6
仕様で作成されます.// minus.js
module.exports = function(a, b) {
return a - b
}
// multi.js
define(function(require, factory) {
'use strict'
return function(a, b) {
return a * b
}
})
// sum.js
export default function(a, b) {
return a + b
}
以上の3つの
app.js
ファイルをjs
ファイルに導入/**
* webpack ES6、CommonJs AMD
*/
// ES6
import sum from './vendor/sum'
console.log('sum(1, 2) = ', sum(1, 2))
// CommonJs
var minus = require('./vendor/minus')
console.log('minus(1, 2) = ', minus(1, 2))
// AMD
require(['./vendor/multi'], function(multi) {
console.log('multi(1, 2) = ', multi(1, 2))
})
2.プロファイル上書きの作成
entry/output
webpack.config.js
Yeswebpack
デフォルトのプロファイル名は、ルートディレクトリの下に作成されます.const path = require('path')
module.exports = {
entry: {
app: './app.js' //
},
output: {
publicPath: __dirname + '/dist/', // js CDN
path: path.resolve(__dirname, 'dist'), //
filename: 'bundle.js' // js
}
}
path.resolve()
メソッドは、1つのパスまたはパスフラグメントのシーケンスを絶対パスとして解析します.__dirname
:現在のモジュールのフォルダ名.console.log
を使って出力すれば分かりますconst path = require('path')
console.log('__dirname: ', __dirname)
console.log('path.resolve: ', path.resolve(__dirname, 'dist'))
module.exports = {
entry: {
app: './app.js' //
},
output: {
publicPath: __dirname + '/dist/', // js CDN
path: path.resolve(__dirname, 'dist'), //
filename: 'bundle.js' // js
}
}
実行
npm run build
パッケージングjs
ファイルdist
フォルダが生成され、パッケージされた2つのファイルが生成されます.これは
AMD
の導入方式に関係し、app.js
にAMD
の書き方を注釈すると、bundle.js
ファイルが1つしかパッケージ化されません.実際にコードを書くときは、
ES6
およびCommonJS
の仕様で書くあなたが
AMD
を注釈した後に、dist
の中で多くのファイルを梱包し終わって、これは梱包する時、先にdist
ファイルを削除していないためで、更に梱包して、私達は1つのプラグインを使って私達に実現するように手伝う必要があって、GitHub
リンク:clean-webpack-plugin
①カードの取り付けnpm install clean-webpack-plugin --save-dev
②修正
webpack
プロファイルconst path = require('path')
const CleanWebpackPlugin = require('clean-webpack-plugin')
module.exports = {
entry: {
app: './app.js' //
},
output: {
publicPath: __dirname + '/dist/', // js CDN
path: path.resolve(__dirname, 'dist'), //
filename: 'bundle.js' // js
},
plugins: [
new CleanWebpackPlugin() // , webpack output.path , webpack 。
]
}
注意!!!インストールされた
clean-webpack-plugin
が3.0バージョンの場合、構成は次のように変更されます.// common js
const { CleanWebpackPlugin } = require('clean-webpack-plugin')
その後
npm run build
を実行すればよいパッケージされたjsファイルは私たちの構成に従ってdistディレクトリの下に置いて、htmlファイルを作成して、パッケージされたjsファイルを参照して、F 12を開けて効果を見ることができます