CD's blog CD's blog
首页
  • HTMLCSS
  • JavaScript
  • Vue
  • TypeScript
  • React
  • Node
  • Webpack
  • Git
  • Nestjs
  • 小程序
  • 浏览器网络
  • 学习笔记

    • 《TypeScript 从零实现 axios》
    • Webpack笔记
  • JS/TS教程

    • 《现代JavaScript》教程
🔧工具方法
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

CD_wOw

内卷的行情,到不了的梦
首页
  • HTMLCSS
  • JavaScript
  • Vue
  • TypeScript
  • React
  • Node
  • Webpack
  • Git
  • Nestjs
  • 小程序
  • 浏览器网络
  • 学习笔记

    • 《TypeScript 从零实现 axios》
    • Webpack笔记
  • JS/TS教程

    • 《现代JavaScript》教程
🔧工具方法
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 配置

    • 配置
    • 使用不同语言进行配置(configuration languages)
    • 多种配置类型(configuration types)
    • 入口和上下文(entry and context)
    • 输出(output)
    • 模块(module)
    • 解析(resolve)
    • 插件(plugins)
    • 开发中 Server(devServer)
    • devtool
    • 构建目标(targets)
    • watch 和 watchOptions
    • 外部扩展(externals)
    • 性能(performance)
    • Node
    • 统计信息(stats)
    • 其它选项(other options)
      • amd
      • bail
      • cache
      • loader
      • parallelism
      • profile
      • recordsPath
      • recordsInputPath
      • recordsOutputPath
  • 指南(实例)

  • 《Webpack》笔记
  • 配置
CD_wOw
2020-12-15
目录

其它选项(other options)

这里是 webpack 支持的其它选项。

寻求帮助:这个页面还在更新中,如果你发现本页面内有描述不准确或者不完整,请在 webpack 的文档仓库 (opens new window)中创建 issue 或者 pull request

# amd

type: object

设置 require.amd 或 define.amd 的值:

amd: {
  jQuery: true
}
1
2
3

某些流行的模块是按照 AMD 规范编写的,最引人瞩目的 jQuery 版本在 1.7.0 到 1.9.1,如果 loader 提示它对页面包含的多个版本采取了特殊许可 (opens new window)时,才会注册为 AMD 模块。

许可权限是具有「限制指定版本注册」或「支持有不同定义模块的不同沙盒」的能力。

此选项允许将模块查找的键(key)设置为真值(truthy value)。 发生这种情况时,webpack 中的 AMD 支持将忽略定义的名称。

# bail

type: boolean

在第一个错误出现时抛出失败结果,而不是容忍它。默认情况下,当使用 HMR 时,webpack 会将在终端以及浏览器控制台中,以红色文字记录这些错误,但仍然继续进行打包。要启用它:

bail: true
1

这将迫使 webpack 退出其打包过程。

# cache

type: boolean object

缓存生成的 webpack 模块和 chunk,来改善构建速度。缓存默认在观察模式(watch mode)启用。禁用缓存只需简单传入:

cache: false
1

如果传递一个对象,webpack 将使用这个对象进行缓存。保持对此对象的引用,将可以在 compiler 调用之间共享同一缓存:

let SharedCache = {};

export default {
  ...,
  cache: SharedCache
}
1
2
3
4
5
6

不要在不同选项的调用之间共享缓存。

Elaborate on the warning and example - calls with different configuration options?

要做的事情:详细说明不同配置选项的警告和示例调用?

# loader

type: object

在 loader 上下文中暴露自定义值。

Add an example...

添加一个例子

# parallelism

type: number

Limit the number of parallel processed modules. Can be used to fine tune performance or to get more reliable profiling results.

限制并行处理模块的数量。可用于微调性能或获得更可靠的分析结果。

# profile

type: boolean

捕获一个应用程序"配置文件",包括统计和提示,然后可以使用 Analyze (opens new window) 分析工具进行详细分析。

使用 StatsPlugin (opens new window) 可以更好地控制生成的配置文件。

Combine with parallelism: 1 for better results.

# recordsPath

开启这个选项可以生成一个 JSON 文件,其中含有 webpack 的 "records" 记录 - 即「用于存储跨多次构建(across multiple builds)的模块标识符」的数据片段。可以使用此文件来跟踪在每次构建之间的模块变化。只要简单的设置一下路径,就可以生成这个 JSON 文件:

recordsPath: path.join(__dirname, 'records.json')
1

如果你使用了代码分离(code splittnig) (opens new window)这样的复杂配置,records 会特别有用。这些数据用于确保拆分 bundle,以便实现你需要的缓存(caching) (opens new window)行为。

注意,虽然这个文件是由编译器(compiler)生成的,但你可能仍然希望在源代码管理中追踪它,以便随时记录它的变化情况。

设置 recordsPath 本质上会把 recordsInputPath 和 recordsOutputPath 都设置成相同的路径。通常来讲这也是符合逻辑的,除非你决定改变记录文件的名称。可以查看下面的实例:

# recordsInputPath

指定读取最后一条记录的文件的名称。这可以用来重命名一个记录文件,可以查看下面的实例:

# recordsOutputPath

指定记录要写入的位置。以下示例描述了如何用这个选项和 recordsInptuPaht 来重命名一个记录文件:

recordsInputPath: path.join(__dirname, 'records.json'),
recordsOutputPath: path.join(__dirname, 'newRecords.json')
1
2
编辑 (opens new window)
#Webpack
上次更新: 2021/08/22, 01:09:59
统计信息(stats)
安装

← 统计信息(stats) 安装→

最近更新
01
gsap动画库学习笔记 - 持续~
06-05
02
远程组件加载方案笔记
05-03
03
小程序使用笔记
03-29
更多文章>
Theme by Vdoing | Copyright © 2020-2023 CD | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式