From 9fe00d60a85f9c5fef8d3506cb4b602a24e7165f Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Thu, 9 Jun 2022 14:47:04 +0100 Subject: [PATCH] fix(webpack): write stub server file with `ssr: false` --- packages/webpack/src/webpack.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/webpack/src/webpack.ts b/packages/webpack/src/webpack.ts index 07db13be6c4..44093eac7b5 100644 --- a/packages/webpack/src/webpack.ts +++ b/packages/webpack/src/webpack.ts @@ -1,4 +1,5 @@ import type { IncomingMessage, ServerResponse } from 'node:http' +import { writeFile } from 'node:fs/promises' import pify from 'pify' import webpack from 'webpack' import webpackDevMiddleware, { API } from 'webpack-dev-middleware' @@ -8,6 +9,7 @@ import type { Compiler, Watching } from 'webpack' import type { Nuxt } from '@nuxt/schema' import { joinURL } from 'ufo' import { logger, useNuxt } from '@nuxt/kit' +import { resolve } from 'pathe' import { DynamicBasePlugin } from '../../vite/src/plugins/dynamic-base' import { createMFS } from './utils/mfs' import { registerVirtualModules } from './virtual-modules' @@ -63,6 +65,11 @@ export async function bundle (nuxt: Nuxt) { for (const c of compilers) { await compile(c) } + + // Write stub file to enable rollup to resolve it for dynamic import + if (!nuxt.options.ssr) { + await writeFile(resolve(nuxt.options.buildDir, 'dist/server/server.mjs'), 'export default () => {}') + } } async function createDevMiddleware (compiler: Compiler) {