webpack4.29.x成神之路(十二) source-map

栏目: JavaScript · 发布时间: 7年前

内容简介:上节:babel编译es6上节目录如下:

目录

上节:babel编译es6

上节目录如下:

webpack4.29.x成神之路(十二) source-map

使用webpack编译后的代码运行在浏览器上,一旦出错,错误指向的是编译后的代码,这对调试带来极大困难,所以webpack自带devtool选项来解决这一问题。

修改webpack.config.js:

// 省略

module.exports = {
  mode: 'production',
  entry: './src/index.js',
  output: {
    filename: '[name].js',
    path: resolve(__dirname, 'bundles')
  },

  // 开启devServer
  devServer: {},
  // 开启调试
  devtool: 'source-map',

  module: {
    rules: [{
      test: /\.(gif|jpg|jpeg|png|svg)$/,
      use: ['url-loader']
    }, {
      test: /\.less$/,
      use: ['style-loader', 'css-loader', 'postcss-loader', 'less-loader']
    }]
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: './index.html'
    }),
    new CleanWebpackPlugin()
  ]
};

然后npm run build,查看bundles文件夹:

webpack4.29.x成神之路(十二) source-map .

  • source-map则会将错误指向源文件。
  • source-map会为每个js都生成一个对应的.map文件
  • 默认会提示错误代码的精确位置(某文件的某行某列),
  • 会映射入口文件及其引入的其它依赖

修改选项:

// 省略
devtool: 'cheap-source-map',
//省略

然后npm run build,查看bundles文件夹,也会为每个js都生成一个对应的.map文件,

区别是: 加上cheap前缀就只会提示到某行,并且只管入口文件,

如果用了cheap前缀,又想映射其它依赖,需要在加上module(cheap-module-source-map)

再改选项:

// 省略
devtool: 'inline-source-map',
//省略

这时再打包就不会生成.map文件了,因为已经内联到对应的js文件中去了。

devtool选项很多,并且可以相互配合,这里给出大众推荐:

开发环境:cheap-module-eval-source-map

生产环境:cheap-module-source-map

下节:摇树优化(tree shaking)(待更新)


以上所述就是小编给大家介绍的《webpack4.29.x成神之路(十二) source-map》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Essential ActionScript 3.0

Essential ActionScript 3.0

Colin Moock / Adobe Dev Library / June 22, 2007 / $34.64

ActionScript 3.0 is a huge upgrade to Flash's programming language. The enhancements to ActionScript's performance, feature set, ease of use, cleanliness, and sophistication are considerable. Essentia......一起来看看 《Essential ActionScript 3.0》 这本书的介绍吧!

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具