The content of this section is derived from the content of the following links and is subject to the CC BY 4.0 license.
The following contents can be assumed to be the result of modifications and deletions based on the original contents if not specifically stated.
false
means that the module is being executed, true
the synchronous execution has been completed.
Current module ID.
Indicates whether or not Hot Module Replacement is enabled and provides an interface to the process. See the HMR API page for details.
See node.js global for details.
Rspack will replace the global with a proxy object and handle compatibility issues in it.
Depends on the configuration node.__filename
.
false
: undefinedmock
: equal to '/index.js'
true
: NodeJs __filenameIf used inside an expression that is parsed by the Parser, the configuration option is treated as true
.
Depends on the configuration node.__dirname
.
false
: undefinedmock
: equal to '/index.js'
true
: NodeJs __dirnameIf used inside an expression that is parsed by the Parser, the configuration option is treated as true
.
The import.meta
exposes context-specific metadata to a JavaScript module, such as the URL of the module. It is only available in ESM.
Please note that Rspack does not support direct access to
import.meta
. Instead, you should access its properties or use destructuring assignment. E.g.,
Returns the absolute file:
URL of the module.
import.meta.webpackContext
is a function specific to webpack that allows you to dynamically import a set of modules.
You can use import.meta.webpackContext
in your code, and Rspack will parse and reference the matching modules during the build process.
The return value of import.meta.webpackContext
is the same as import.meta.webpackContext. We recommend using import.meta.webpackContext
, which is more powerful.
The first arguments passed to
import.meta.webpackContext()
must be literals.
The context returned by import.meta.webpackContext()
is a function that takes a request
argument (module path).
This function has three properties: resolve
, keys
, and id
.
resolve
is a function and returns the module id of the parsed request.keys
is a function that returns an array of all possible requests that the context module can handle.id
is the module id of the context module. This may be useful for module.hot.accept
.This can be useful if you want to require all files in a directory or matching a pattern.
Consider a scenario where you have a folder structure like this:
You can use import.meta.webpackContext()
to dynamically import all component files in the folder:
import.meta.webpackContext()
streamlines the process of module importation especially when you have a lot of files to manage. When using it, please avoid matching unnecessary files, as this might lead to significantly increased build time and output size.
An alias for module.hot
, however import.meta.webpackHot
can be used in strict ESM while module.hot
can't.
It provides access to the hash of the compilation.
Access the runtime id of current entry.
Equals the configuration option's output.publicPath
。
Get or change base URI at runtime.
Rspack is capable of adding a nonce to all scripts that it loads.
To activate this feature, set a __webpack_nonce__
variable and include it in your entry script.
Access to the internal object of all modules.
It provides access to the the current module
. module
is not available in strict ESM.
It provides access to the ID of current module (module.id
). module
is not available in strict ESM.
The raw require function. This expression isn't parsed by the Parser for dependencies.
Generates a require
function that is not parsed by webpack.
Can be used to do cool stuff with a global require function if available.
Test whether or not the given module is bundled by webpack.
The resource query of the current module.
If the following require
call was made, then the query string would be available in file.js
.
Get current chunk name.
The internal chunk loading function. Takes one argument:
chunkId
: the id for the chunk to load.Example to load chunks from alternate public path when one failed:
This object is used as a shared scope in the remote container and is filled with the provided modules from a host
This method is used to initialize modules of a shared scope in the host container.
Context from System.js when output.libraryTarget="system"
Current Rspack version, default to version in @rspack/core/package.json
, can be
modified through experiments.rspackFuture.bundlerInfo.version.
The ID of the current bundler, the value is bundler={bundler}@{version}
: - bundler
:
Default to "rspack"
and can be modified through experiments.rspackFuture.bundlerInfo.bundler
.
version
: Default to version in @rspack/core/package.json
and can be modified
through experiments.rspackFuture.bundlerInfo.version
.