|
@@ -0,0 +1,63 @@
|
|
|
+
|
|
|
+const {resolve} = require('path');
|
|
|
+const HtmlWebpackPlugin = require('html-webpack-plugin');
|
|
|
+
|
|
|
+module.exports = {
|
|
|
+ entry : './src/index.js',
|
|
|
+ output:{
|
|
|
+ filename: 'built.js',
|
|
|
+ path: resolve(__dirname,'build')
|
|
|
+ },
|
|
|
+ module:{
|
|
|
+ rules:[
|
|
|
+ //less
|
|
|
+ {
|
|
|
+ test:/\.less$/,
|
|
|
+ use:['style-loader','css-loader','less-loader']
|
|
|
+ },
|
|
|
+ //css
|
|
|
+ {
|
|
|
+ test:/\.css$/,
|
|
|
+ use:['style-loader','css-loader']
|
|
|
+ },
|
|
|
+ //图片
|
|
|
+ {
|
|
|
+ test: /\.(jpg|jpeg|png|gif)$/,
|
|
|
+ loader: 'url-loader',
|
|
|
+ options:{
|
|
|
+ limit:8*1024,
|
|
|
+ name:'[hash:10].[ext]',
|
|
|
+ esModule:false
|
|
|
+ },
|
|
|
+ type:'javascript/auto'
|
|
|
+ },
|
|
|
+ //html
|
|
|
+ {
|
|
|
+ test:/\.html$/,
|
|
|
+ loader: 'html-loader'
|
|
|
+ },
|
|
|
+ //其他
|
|
|
+ {
|
|
|
+ exclude:/\.(html|js|css|less|jpg|jpeg|png|gif)$/,
|
|
|
+ loader:'file-loader',
|
|
|
+ options:{
|
|
|
+ name:'[hash:10].[ext]',
|
|
|
+ esModule:false
|
|
|
+ },
|
|
|
+ type:'javascript/auto'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ plugins:[
|
|
|
+ new HtmlWebpackPlugin({
|
|
|
+ template:'./src/index.html'
|
|
|
+ })
|
|
|
+ ],
|
|
|
+ mode: 'development',
|
|
|
+ devServer:{
|
|
|
+ contentBase:resolve(__dirname,'build'),
|
|
|
+ compress:true,
|
|
|
+ port:3000,
|
|
|
+ open:true
|
|
|
+ }
|
|
|
+}
|