webpack2

作者: 老虎爱吃母鸡 | 来源:发表于2017-04-17 15:38 被阅读0次

webpack2

output

  1. hash和chunkhash,主要作用是用来去缓存

    • hash ===> webpack编译过程
    • chunkhash ===> 打包后文件内容的hash
  2. 异步加载

    1. chunkFilename

      指定的输出文件名会在require.ensure打包出来的文件生效

    2. require.ensure

      符合AMD规范,在ensure函数中最后指定的名字,可以在chunkFilename中通过[name]使用

      // index.js
      require.ensure([], function() {
          require('index1.js')
      }, 'dynamic')
      // webpack.config.js
      output: {
          chunkFilename: [name].js  // ===> dynamic.js
      }
      
    3. publicPath

  3. modules中,webpack2推荐使用新的写法,但是旧的写法也兼容

  4. resolve ===> alias,为require的文件写alias

    // 不使用alias,只能直接require文件路径
    require('./test/test.js')
    // 使用alias,`test: path.resolve(__dirname, 'test/test.js')`
    require('test')
    
  5. devtool

    1. 'source-map'

      devtool: 'source-map'
      
    2. 'cheap-source-map'

      代码量比直接编译后的代码要少,但不是origin code

  6. loader ===> options

    {
        test: /\.html/,
        use:{
            loader:"html-loader",
            options:{
                minimize: false,
                attrs:false
            }
        }
    }   
    

    loader中的options用来个性化loader的行为

  7. ExtractTextWebpackPlugin插件

    1. require('./index.less')默认行为是,经过loader处理后变成css文件,然后在head中生成一个style标签,使用内嵌css的方式
    2. 使用ExtractTextWebpackPlugin把css文件抽取出来合并成一个css文件,以link的形式放在head中
  8. 常见plugins

    1. ProvidePlugin

      new webpack.ProvidePlugin({
        $: 'jquery',
      })
      

      自动加载模块,无论何时在模块中$是一个自由变量,不需要require进来,jquery模块会自动加载,然后jquery模块的输出作为$填充加载的模块

    2. CommonsChunkPlugin

      1. 使用这个插件后必须在html中先引入common.js,然后再引入index.js,否则会报错
      2. 如果直接使用插件,没有在entry中定义common入口,那么作用是提取webpack bootstrap到一个单独的文件中
      3. 抽取在多个入口文件中的公共模块到一个单独的文件

相关文章

  • webpack2教程续之DllPlugin

    本文承接webpack2教程、webpack2教程续之自动编译以及webpack2教程续之eslint检测,本文所...

  • webpack2教程续之eslint检测

    本文承接webpack2教程以及webpack2教程续之自动编译,本文所说的项目目录依旧是webpack2 在上两...

  • 详解 Webpack2 的那些路径

    Webpack2 中有很多涉及路径参数配置,若不知其所以然,很容易混淆出错。本文尽可能的汇集了 Webpack2 ...

  • webpack2学习

    webpack2学习 webpack2基本介绍 介绍 webpack和gulp一样是一个自动化的构建工具你不想做的...

  • webpack2教程续之自动编译

    本文承接上一篇webpack2教程,本文所说的项目目录依旧是webpack2 在上一篇中,我们搭建了基于webpa...

  • webpack1升级webpack2

    webpack2终于正式发布了。最近几天一直在调研webpack2的升级成本,因为公司的移动端使用的是webpac...

  • webpack2

    webpack2详解 1. 项目小工具 anywherenpm i -g anywhere //全局安装any...

  • webpack2

    webpack2 output hash和chunkhash,主要作用是用来去缓存hash ===> webpac...

  • webpack2

    使用webpack构建项目 webpack核心概念 webpack 是一个现代 JavaScript 应用程序的模...

  • react使用笔记

    代码分割require.ensure http://www.css88.com/doc/webpack2/gu...

网友评论

      本文标题:webpack2

      本文链接:https://www.haomeiwen.com/subject/hemtzttx.html