From 272a2527a817c5c62101ebe7bfcfe663c59668da Mon Sep 17 00:00:00 2001 From: Bjorn Lu Date: Thu, 12 May 2022 02:50:34 +0800 Subject: [PATCH] fix(lib): enable inlineDynamicImports for umd and iife (#8126) --- packages/vite/src/node/build.ts | 5 ++++- playground/lib/__tests__/lib.spec.ts | 2 +- playground/lib/vite.dyimport.config.js | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/vite/src/node/build.ts b/packages/vite/src/node/build.ts index 496134f196eece..00146a25bde0cd 100644 --- a/packages/vite/src/node/build.ts +++ b/packages/vite/src/node/build.ts @@ -441,7 +441,10 @@ async function doBuild( // #764 add `Symbol.toStringTag` when build es module into cjs chunk // #1048 add `Symbol.toStringTag` for module default export namespaceToStringTag: true, - inlineDynamicImports: ssr && typeof input === 'string', + inlineDynamicImports: + output.format === 'umd' || + output.format === 'iife' || + (ssr && typeof input === 'string'), ...output } } diff --git a/playground/lib/__tests__/lib.spec.ts b/playground/lib/__tests__/lib.spec.ts index 48680db4c368c1..470c124ed388dc 100644 --- a/playground/lib/__tests__/lib.spec.ts +++ b/playground/lib/__tests__/lib.spec.ts @@ -40,7 +40,7 @@ describe.runIf(isBuild)('build', () => { 'hello vite' ) const code = fs.readFileSync( - path.join(testDir(), 'dist/lib/dynamic-import-message.js'), + path.join(testDir(), 'dist/lib/dynamic-import-message.es.js'), 'utf-8' ) expect(code).not.toMatch('__vitePreload') diff --git a/playground/lib/vite.dyimport.config.js b/playground/lib/vite.dyimport.config.js index d738503f0c9d09..1f64018c5850cf 100644 --- a/playground/lib/vite.dyimport.config.js +++ b/playground/lib/vite.dyimport.config.js @@ -8,9 +8,9 @@ module.exports = { build: { lib: { entry: path.resolve(__dirname, 'src/main2.js'), - formats: ['es'], + formats: ['es', 'iife'], name: 'message', - fileName: () => 'dynamic-import-message.js' + fileName: (format) => `dynamic-import-message.${format}.js` }, outDir: 'dist/lib' }