@mpxjs/webpack-plugin 2.7.24 → 2.7.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,7 +12,7 @@ module.exports = function createJSONHelper ({ loaderContext, emitWarning, custom
12
12
  const resolveMode = mpx.resolveMode
13
13
  const externals = mpx.externals
14
14
  const root = mpx.projectRoot
15
- const publicPath = loaderContext._compilation?.outputOptions.publicPath || ''
15
+ const publicPath = (loaderContext._compilation && loaderContext._compilation.outputOptions.publicPath) || ''
16
16
  const pathHash = mpx.pathHash
17
17
  const getOutputPath = mpx.getOutputPath
18
18
  const mode = mpx.mode
@@ -222,7 +222,7 @@ module.exports = function (json, {
222
222
  loaderContext._module && loaderContext._module.addPresentationalDependency(new RecordResourceMapDependency(resourcePath, 'page', outputPath))
223
223
  localPagesMap[outputPath] = {
224
224
  resource: addQuery(resource, { isPage: true }),
225
- async: tarRoot || queryObj.async,
225
+ async: queryObj.async || tarRoot,
226
226
  isFirst
227
227
  }
228
228
  callback()
@@ -20,6 +20,13 @@ function shallowStringify (obj) {
20
20
  return `{${arr.join(',')}}`
21
21
  }
22
22
 
23
+ function getAsyncChunkName (chunkName) {
24
+ if (chunkName && typeof chunkName !== 'boolean') {
25
+ return `/* webpackChunkName: "${chunkName}" */`
26
+ }
27
+ return ''
28
+ }
29
+
23
30
  module.exports = function (script, {
24
31
  loaderContext,
25
32
  ctorType,
@@ -62,7 +69,7 @@ module.exports = function (script, {
62
69
  if (pageCfg) {
63
70
  const pageRequest = stringifyRequest(pageCfg.resource)
64
71
  if (pageCfg.async) {
65
- tabBarPagesMap[pagePath] = `()=>import(${pageRequest}).then(res => getComponent(res, { __mpxPageRoute: ${JSON.stringify(pagePath)} }))`
72
+ tabBarPagesMap[pagePath] = `()=>import(${getAsyncChunkName(pageCfg.async)}${pageRequest}).then(res => getComponent(res, { __mpxPageRoute: ${JSON.stringify(pagePath)} }))`
66
73
  } else {
67
74
  tabBarPagesMap[pagePath] = `getComponent(require(${pageRequest}), { __mpxPageRoute: ${JSON.stringify(pagePath)} })`
68
75
  }
@@ -177,7 +184,7 @@ module.exports = function (script, {
177
184
  pagesMap[pagePath] = `getComponent(require(${stringifyRequest(tabBarContainerPath)}), { __mpxBuiltIn: true })`
178
185
  } else {
179
186
  if (pageCfg.async) {
180
- pagesMap[pagePath] = `()=>import(${pageRequest}).then(res => getComponent(res, { __mpxPageRoute: ${JSON.stringify(pagePath)} }))`
187
+ pagesMap[pagePath] = `()=>import(${getAsyncChunkName(pageCfg.async)} ${pageRequest}).then(res => getComponent(res, { __mpxPageRoute: ${JSON.stringify(pagePath)} }))`
181
188
  } else {
182
189
  // 为了保持小程序中app->page->component的js执行顺序,所有的page和component都改为require引入
183
190
  pagesMap[pagePath] = `getComponent(require(${pageRequest}), { __mpxPageRoute: ${JSON.stringify(pagePath)} })`
@@ -193,7 +200,7 @@ module.exports = function (script, {
193
200
  const componentCfg = localComponentsMap[componentName]
194
201
  const componentRequest = stringifyRequest(componentCfg.resource)
195
202
  if (componentCfg.async) {
196
- componentsMap[componentName] = `()=>import(${componentRequest}).then(res => getComponent(res))`
203
+ componentsMap[componentName] = `()=>import(${getAsyncChunkName(componentCfg.async)}${componentRequest}).then(res => getComponent(res))`
197
204
  } else {
198
205
  componentsMap[componentName] = `getComponent(require(${componentRequest}))`
199
206
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mpxjs/webpack-plugin",
3
- "version": "2.7.24",
3
+ "version": "2.7.25",
4
4
  "description": "mpx compile core",
5
5
  "keywords": [
6
6
  "mpx"
@@ -80,5 +80,5 @@
80
80
  "engines": {
81
81
  "node": ">=14.14.0"
82
82
  },
83
- "gitHead": "1764785d4da33a7ea9004edc7ea18596262c7969"
83
+ "gitHead": "0bcd275c2d8a3fe33ba383b5c2b53e1988217f9e"
84
84
  }