fix(vite): remove vite's query for external modules (#2521)

This commit is contained in:
Anthony Fu 2021-12-23 21:43:41 +08:00 committed by GitHub
parent b554c46ab2
commit cac70e4696
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -3,6 +3,7 @@ import { existsSync } from 'fs'
import { resolve } from 'pathe'
import * as vite from 'vite'
import { ExternalsOptions, isExternal as _isExternal, ExternalsDefaults } from 'externality'
import { parseURL } from 'ufo'
import { hashId, uniq } from './utils'
export interface TransformChunk {
@ -69,9 +70,11 @@ async function transformRequest (opts: TransformOptions, id: string) {
}
}
if (await isExternal(opts, id)) {
const { pathname } = parseURL(id)
if (await isExternal(opts, pathname)) {
return {
code: `(global, exports, importMeta, ssrImport, ssrDynamicImport, ssrExportAll) => import('${(pathToFileURL(id))}').then(r => { exports.default = r.default; ssrExportAll(r) }).catch(e => { console.error(e); throw new Error('[vite dev] Error loading external "${id}".') })`,
code: `(global, exports, importMeta, ssrImport, ssrDynamicImport, ssrExportAll) => import('${(pathToFileURL(pathname))}').then(r => { exports.default = r.default; ssrExportAll(r) }).catch(e => { console.error(e); throw new Error('[vite dev] Error loading external "${id}".') })`,
deps: [],
dynamicDeps: []
}