Document webpack change: Fix layer is missing in dynamic import with dynamic resource
A pull request by @huozhi was merged and maintainers requested a documentation change.
See pull request: https://github.com/webpack/webpack/pull/17310
Summary
When you're using dynamic import with dynamic resource name with feature layers enabled, the dynamic imported files didn't inherit with the parent layer
related issue on next.js side: https://github.com/vercel/next.js/issues/49382
🤖 Generated by Copilot at 8422d51
This pull request adds support for layers in ContextModule and tests the feature with different scenarios of dynamic imports and resources. It also adds a new rule to the webpack configuration file for assigning modules to layers based on their names.
Details
🤖 Generated by Copilot at 8422d51
- Add
layerproperty toContextModuleclass and its serialization and deserialization methods (link, link, link) - Set
layerproperty ofdataobject inContextModuleFactoryclass fromcontextInfoobject populated byContextDependencyclass (link) - Add new rule to webpack configuration file to assign
dynamic-layerlayer to files matchingdynamic-module-layerin name (test/configCases/layer/rules/webpack.config.js, link) - Add new test case file
dynamic-module-layer.jsto export an object with name, layer, and modules properties, where modules is an array of promises resolving to dynamic modules imported with dynamic resources (test/configCases/layer/rules/dynamic-module-layer.js, link) - Add new test case files
module1.jsandmodule2.jsto export objects with name and layer properties, where layer is a special variable__webpack_layer__replaced by webpack at runtime (test/configCases/layer/rules/dynamic/module1.js, link;test/configCases/layer/rules/dynamic/module2.js, link) - Import object from
dynamic-module-layer.jsand add new test case to assert that layer property of object and dynamic modules matchdynamic-layer(test/configCases/layer/rules/index.js, link, link)
Ref: https://github.com/webpack/webpack.js.org/issues/6750
Hello, Is this open for external help?