webpack学习第六步——source-map的使用

2020-02-14  本文已影响0人  Love小六六

什么是source-map

设置dev-tool

const path = require('path')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const CleanWebpackPlugin = require('clean-webpack-plugin')
module.exports = {
    mode: "development",
    entry: {
        bundle: './src/index.js',
    },
    // 设置为none
    devtool: "none",
    module: {
        rules: [{
            test: /\.(jpg|png|gif)$/,
            use: {
                loader: "url-loader",
                options: {
                    name: '[name]_[hash].[ext]',
                    outputPath: 'images/',
                    limit: 2048
                }
            }
        },{
            test: /\.scss$/,
            use: [
                'style-loader',
                {
                    loader: "css-loader",
                    options: {
                        importLoaders: 2 ,
                        modules: true
                    }
                },
                'sass-loader',
                'postcss-loader'
            ]
        }]
    },
    plugins: [
        new HtmlWebpackPlugin({
        template: 'src/index.html'
        }),
        new CleanWebpackPlugin()
    ],
    output: {
        path: path.resolve(__dirname, 'build'),
        filename: '[name].js'
    }
}

关闭source-map后打包,打包后生成bundle.js

打开source-map

devtool: "source-map"

inline-source-map

devtool: "inline-source-map"

cheap

devtool: "cheap"

module

devtool: "module"

eval

devtool: "eval"

总结

模式 特性
eval 使用eval包裹模块代码
source-map 产生.map文件
cheap 不包含列信息,也不包含loader的sourcemap
module 包含loader、三方库的sourcemap
inline 将.map作为DataURI嵌入,不单独生成.map文件
上一篇 下一篇

猜你喜欢

热点阅读