From b1e73951ed402a64882fb771bf433938ad171e19 Mon Sep 17 00:00:00 2001 From: underfin Date: Wed, 5 May 2021 15:56:59 +0800 Subject: [PATCH] fix(ssr): resolve dynamic import vars modules (#3177) Co-authored-by: Shinigami --- packages/playground/ssr-vue/src/pages/Home.vue | 6 ++++-- packages/vite/src/node/ssr/ssrModuleLoader.ts | 5 +++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/playground/ssr-vue/src/pages/Home.vue b/packages/playground/ssr-vue/src/pages/Home.vue index f96fb6b4d5a66a..827bfd82ba7f7f 100644 --- a/packages/playground/ssr-vue/src/pages/Home.vue +++ b/packages/playground/ssr-vue/src/pages/Home.vue @@ -13,11 +13,13 @@ diff --git a/packages/vite/src/node/ssr/ssrModuleLoader.ts b/packages/vite/src/node/ssr/ssrModuleLoader.ts index bb41af0f49a67e..3ee706740f3c60 100644 --- a/packages/vite/src/node/ssr/ssrModuleLoader.ts +++ b/packages/vite/src/node/ssr/ssrModuleLoader.ts @@ -100,6 +100,11 @@ async function instantiateModule( if (isExternal(dep)) { return Promise.resolve(nodeRequire(dep, mod.file, server.config.root)) } else { + // #3087 dynamic import vars is ignored at rewrite import path, + // so here need process relative path + if (dep.startsWith('.')) { + dep = path.posix.resolve(path.dirname(url), dep) + } return ssrLoadModule(dep, server, context, urlStack.concat(url)) } }