diff --git a/lib/dynamic.js b/lib/dynamic.js index 73052e53..0638bc38 100644 --- a/lib/dynamic.js +++ b/lib/dynamic.js @@ -54,7 +54,8 @@ export default function dynamicComponent (p, o) { } loadComponent () { - promise.then((AsyncComponent) => { + promise.then((m) => { + const AsyncComponent = m.default || m // Set a readable displayName for the wrapper component const asyncCompName = getDisplayName(AsyncComponent) if (asyncCompName) { @@ -65,7 +66,7 @@ export default function dynamicComponent (p, o) { this.setState({ AsyncComponent }) } else { if (this.isServer) { - registerChunk(AsyncComponent.__webpackChunkName) + registerChunk(m.__webpackChunkName) } this.state.AsyncComponent = AsyncComponent } @@ -100,9 +101,10 @@ export default function dynamicComponent (p, o) { const loadModule = (name) => { const promise = modulePromiseMap[name] - promise.then((Component) => { + promise.then((m) => { + const Component = m.default || m if (this.isServer) { - registerChunk(Component.__webpackChunkName) + registerChunk(m.__webpackChunkName) } moduleMap[name] = Component remainingPromises-- diff --git a/server/build/babel/plugins/handle-import.js b/server/build/babel/plugins/handle-import.js index d1f661d7..930effa7 100644 --- a/server/build/babel/plugins/handle-import.js +++ b/server/build/babel/plugins/handle-import.js @@ -13,7 +13,6 @@ const buildImport = (args) => (template(` eval('require.ensure = function (deps, callback) { callback(require) }') require.ensure([], (require) => { let m = require(SOURCE) - m = m.default || m m.__webpackChunkName = '${args.name}.js' resolve(m); }, 'chunks/${args.name}.js'); @@ -23,13 +22,12 @@ const buildImport = (args) => (template(` const weakId = require.resolveWeak(SOURCE) try { const weakModule = __webpack_require__(weakId) - return resolve(weakModule.default || weakModule) + return resolve(weakModule) } catch (err) {} require.ensure([], (require) => { try { let m = require(SOURCE) - m = m.default || m resolve(m) } catch(error) { reject(error)