返回介绍

模块变量(module variables)

发布于 2019-05-27 04:54:17 字数 6871 浏览 1201 评论 0 收藏 0

本章节涵盖了使用 webpack 编译的代码中所有的变量。模块将通过 module 和其他变量,来访问编译过程中的某些数据。

module.loaded (NodeJS)

false 表示该模块正在执行, true 表示同步执行已经完成。

module.hot (webpack 特有变量)

表示 模块热替换(Hot Module Replacement) 是否启用,并给进程提供一个接口。详细说明请查看 模块热替换 API 页面

module.id (CommonJS)

当前模块的 ID。

module.id === require.resolve("./file.js")

module.exports (CommonJS)

调用者通过 require 对模块进行调用时返回的值(默认为一个新对象)。

module.exports = function doSomething() {
  // 做一些操作……
};

W> 无法在异步函数中访问该变量

exports (CommonJS)

该变量默认值为 module.exports(即一个对象)。 如果 module.exports 被重写的话, exports 不再会被导出。

exports.someValue = 42;
exports.anObject = {
    x: 123
};
exports.aFunction = function doSomething() {
    // Do something
};

global (NodeJS)

Node.js global.

process (NodeJS)

Node.js process.

__dirname (NodeJS)

取决于 node.__dirname 配置选项:

如果在一个被 Parser 解析的表达式内部使用,则配置选项会被当作 true 处理。

__filename (NodeJS)

取决于 node.__filename 配置选项:

如果在一个被 Parser 解析的表达式内部使用,则配置选项会被当作 true 处理。

__resourceQuery (webpack 特有变量)

当前模块的资源查询(resource query) 。如果进行了如下的 reqiure 调用,那么查询字符串(query string)在file.js 中可访问。

require('file.js?test')

file.js

__resourceQuery === '?test'

__webpack_public_path__ (webpack 特有变量)

等同于 output.publicPath 配置选项.

__webpack_require__ (webpack 特有变量)

原始 require 函数。这个表达式不会被解析器解析为依赖。

__webpack_chunk_load__ (webpack 特有变量)

内部 chunk 载入函数,有两个输入参数:

  • chunkId 需要载入的 chunk id。
  • callback(require) chunk 载入后调用的回调函数。

__webpack_modules__ (webpack 特有变量)

访问所有模块的内部对象。

__webpack_hash__ (webpack 特有变量)

这个变量只有在启用 HotModuleReplacementPlugin 或者 ExtendedAPIPlugin 时才生效。这个变量提供对编译过程中(compilation)的 hash 信息的获取。

__non_webpack_require__ (webpack 特有变量)

生成一个不会被 webpack 解析的 require 函数。配合全局可以获取到的 require 函数,可以完成一些酷炫操作。

DEBUG (webpack 特有变量)

等同于配置选项中的 debug

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文