webpack.config.js

const path = require('path');
const HtmlWebpackPlugin=require('html-webpack-plugin');
const CleanWebpackPlugin=require('clean-webpack-plugin')

module.exports = {
    //输入文件地址
    entry: {
        app: './src/index.js',
        print: './src/print.js'
    },
    //指引错误位置
    devtool: 'inline-source-map',
    //告知 webpack-dev-server,在 localhost:8080 下建立服务
    devServer:{
        contentBase:'./dist'
    },
    plugins:[
        //清理旧文件夹
        new CleanWebpackPlugin(['dist']),
        //创建了一个全新的文件,所有的 bundle 会自动添加到 html 中
        new HtmlWebpackPlugin({
            title:'Output Management'
        })
    ],
    //输出文件地址
    output: {
        filename: '[name].bundle.js',
        path: path.resolve(__dirname, 'dist'),
        //文件资源
        publicPath:'/'
    },
    module: {      
        rules: [
            //加载css
            {
                test: /\.css$/,
                use: [
                    'style-loader',
                    'css-loader'
                ]
            },
            //加载图片
            {
                test: /\.(png|svg|jpg|gif)$/,
                use: [
                    'file-loader'
                ]
            }
        ]
    }
}

package.json

  "scripts": {
    "build": "webpack",
    "watch": "webpack --watch",
    "start": "webpack-dev-server --open",
    "server":"node server.js"
  },

server.js

const express=require('express');
const webpack=require('webpack');
const webpackDevMidddleware=require('webpack-dev-middleware');

const app=express();
const config=require('./webpack.config.js');
const compiler=webpack(config);

app.use(webpackDevMidddleware(compiler,{
    publicPath:config.output.publicPath
}))

app.listen(3000,function(){
    console.log('webpack start 3000')
})

 

 posted on 2018-04-19 09:42  落逸  阅读(102)  评论(0编辑  收藏  举报