开始使用webpack

2018-11-05  本文已影响0人  广州芦苇科技web前端

作者:叶茂;
标签: webpack


webpack配置文件

mode

// webpack.config.js
module.exports = {
    mode: 'production'
}
webpack --mode=production

context

context: __dirname

entry

entry: './src/main.js' // 相对路径,先对于context
entry: path.resolve(__dirname, './src/main.js') // 绝对路径

// 多入口写法
entry: {
    main1: './src/main1.js',
    main2: './src/main2.js'
}

output

output: {
    path: ${工作路径} + '/dist' // 默认 // 这是一行伪代码
    filename: 'main.js'
    publicPath: '/public/' // 相关静态文件路劲前会添加该字符串
}

module.rules

module: {
    rules: [
        test: /\.(png|jpg|jpeg|gif|webp)$/,
        use: {
            loader: 'url-loader',
            options: {
                limit: 10000,
                name: 'image/[name].[hash:8].[ext]',
            },
        }
    ]
}

body {
    background: url('./image.png');
}

--- 打包 ===>

body {
    background: url('/publicPath/image/image.hash123123.png')
}

plugins

// 可以同时使用多次
plugins: [
    new HtmlWebpackPlugin({
      template: path.resolve(APP_PATH, './template/src/oldmain.tpl'), // 模板文件的位置
      filename: path.resolve(APP_PATH, './template/template.tpl'), // 输出路径和文件名
    }),

    new HtmlWebpackPlugin({
      template: 'index.html',
      filename: 'index.html',
    }), 
]
- new webpack.DefinePlugin({
    PRODUCTION: JSON.stringify(true),
    HOST: "'http://www.baidu.com'"
}),

devtool

devtool: 'source-map'
上一篇下一篇

猜你喜欢

热点阅读