diff --git a/packages/nuxt/src/core/utils/plugins.ts b/packages/nuxt/src/core/utils/plugins.ts index 9002a133692d..482a904657a0 100644 --- a/packages/nuxt/src/core/utils/plugins.ts +++ b/packages/nuxt/src/core/utils/plugins.ts @@ -14,6 +14,11 @@ export function isVue (id: string, opts: { type?: Array<'template' | 'script' | const query = parseQuery(search) + // Component async/lazy wrapper + if (query.nuxt_component) { + return false + } + // Macro if (query.macro && (!opts.type || opts.type.includes('script'))) { return true diff --git a/packages/vite/src/plugins/ssr-styles.ts b/packages/vite/src/plugins/ssr-styles.ts index cca1ab2a90c3..d54f4e3b3231 100644 --- a/packages/vite/src/plugins/ssr-styles.ts +++ b/packages/vite/src/plugins/ssr-styles.ts @@ -93,7 +93,7 @@ export function ssrStylesPlugin (options: SSRStylePluginOptions): Plugin { async transform (code, id) { const { pathname, search } = parseURL(decodeURIComponent(pathToFileURL(id).href)) const query = parseQuery(search) - if (!pathname.match(/\.(vue|((c|m)?j|t)sx?)$/g) || query.macro) { return } + if (!pathname.match(/\.(vue|((c|m)?j|t)sx?)$/g) || query.macro || query.nuxt_component) { return } if (options.shouldInline && !options.shouldInline(id)) { return } const relativeId = relativeToSrcDir(id)