From 57bb94b2e6bf684d13f19f7f21613cdef0a7984a Mon Sep 17 00:00:00 2001 From: Anthony Fu Date: Fri, 6 May 2022 18:18:54 +0800 Subject: [PATCH] chore: update --- packages/vite-node/src/client.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/vite-node/src/client.ts b/packages/vite-node/src/client.ts index 35a557c0f075..bef4d25182fd 100644 --- a/packages/vite-node/src/client.ts +++ b/packages/vite-node/src/client.ts @@ -129,7 +129,8 @@ export class ViteNodeRunner { if (id in requestStubs) return requestStubs[id] - const { code: transformed, externalize } = await this.options.fetchModule(id) + // eslint-disable-next-line prefer-const + let { code: transformed, externalize } = await this.options.fetchModule(id) if (externalize) { const mod = await this.interopedImport(externalize) this.moduleCache.set(fsPath, { exports: mod }) @@ -177,8 +178,11 @@ export class ViteNodeRunner { __dirname: dirname(__filename), }) + if (transformed[0] === '#') + transformed = transformed.replace(/^\#\!.*/, s => ' '.repeat(s.length)) + // add 'use strict' since ESM enables it by default - const fn = vm.runInThisContext(`'use strict';async (${Object.keys(context).join(',')})=>{{${transformed.replace(/^\#\!.*/, s => ' '.repeat(s.length))}\n}}`, { + const fn = vm.runInThisContext(`'use strict';async (${Object.keys(context).join(',')})=>{{${transformed}\n}}`, { filename: fsPath, lineOffset: 0, })