diff --git a/packages/vite/src/node/server/pluginContainer.ts b/packages/vite/src/node/server/pluginContainer.ts index f16498c3bbf50c..b6eb4e5904c888 100644 --- a/packages/vite/src/node/server/pluginContainer.ts +++ b/packages/vite/src/node/server/pluginContainer.ts @@ -445,6 +445,21 @@ export async function createPluginContainer( } } } + } else if (err.loc) { + if (!err.frame) { + let code = err.pluginCode + if (err.loc.file) { + err.id = normalizePath(err.loc.file) + if (!code) { + try { + code = fs.readFileSync(err.loc.file, 'utf-8') + } catch {} + } + } + if (code) { + err.frame = generateCodeFrame(code, err.loc) + } + } } return err }