美文网首页
webpack小白学习之路(一)

webpack小白学习之路(一)

作者: JosephScript | 来源:发表于2020-06-18 10:24 被阅读0次

    入口【entry】

    标识使用模块的入口

    // webpack.config.js
    module.exports = {
      entry: './.../xxx.js'
    };
    

    出口【output】

    标识输出所创建bundles的位置、命名

    // webpack.config.js
    const path = require('path') // 操作文件路劲
    
    module.export = {
    entry: './.../xxx.js'
    output: {
      path:path.resolve(_dirname, 'dist'),
      filename: 'my-first-webpack.bundle.js',
      ... // 更多属性可以看官方文档
      }
    }
    

    引入的path模块:一个 Node.js 核心模块,用于操作文件路劲

    loader【加载器】

    处理非JavaScript 文件,将其转化为 webpack 能够处理的有效模块。

    在更高层面,在 webpack 的配置中 loader 有两个目标:

    1、test 属性,用于标识出应该被对应的 loader 进行转换的某个或某些文件。
    2、use 属性,表示进行转换时,应该使用哪个 loader。

    // webpack.config.js
    const path = require('path');
    
    const config = {
      output: {
        filename: 'my-first-webpack.bundle.js'
      },
      module: {
        rules: [
          { 
            test: /\.txt$/, 
            use: 'raw-loader',
            ... // 更多属性请参考官方文档
         }
        ]
      }
    };
    
    // 以上 rules 代码等于:“嘿,webpack 编译器,当你碰到「在 require()/import 语句中被解析为 '.txt' 的路径」时,在你对它打包之前,先使用 raw-loader 转换一下。”
    
    module.exports = config;
    

    插件【plugins】

    可以用于执行范围更广的任务。打包优化 => 压缩 => 重新定义环境中的变量

    使用:require() 该插件,然后再 plugins 数组中添加,多个插件可用 options 定义
    备注: 你也可以多次使用同一个插件,只需 new 创建一个它的实例

    // webpack.config.js
    const HtmlWebpackPlugin = require('html-webpack-plugin'); // 通过 npm 安装,此处引入,下面 plugins 声明
    const webpack = require('webpack'); // 用于访问内置插件
    
    const config = {
      module: {
        rules: [
          { test: /\.txt$/, use: 'raw-loader' }
        ]
      },
      plugins: [
        new HtmlWebpackPlugin({ template: './src/index.html' }) // { template: './src/index.html' } 为该插件特定的配置
      ]
    };
    
    module.exports = config;
    

    模式

    通过选择 development 或 production 之中的一个,来设置 mode 参数,你可以启用相应模式下的 webpack 内置的优化

    module.exports = {
      mode: 'production'
    }
    

    相关文章

      网友评论

          本文标题:webpack小白学习之路(一)

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