diff --git a/src/dev-server.ts b/src/dev-server.ts index 7e5ef8c..afab74f 100644 --- a/src/dev-server.ts +++ b/src/dev-server.ts @@ -8,6 +8,7 @@ export interface DevServerOptions { exclude?: (string | RegExp)[]; injectClientScript?: boolean; loadModule?: (server: ViteDevServer, entry: string) => Promise; + prefix?: string; } export const defaultOptions: Partial = { @@ -196,7 +197,12 @@ export function devServer(options?: DevServerOptions): Plugin { entry, }; - server.middlewares.use(createMiddleware(server, mergedOptions)); + const middleware = createMiddleware(server, mergedOptions); + if (mergedOptions.prefix) { + server.middlewares.use(mergedOptions.prefix, middleware); + } else { + server.middlewares.use(middleware); + } }, }; } diff --git a/src/srvx.ts b/src/srvx.ts index 62b1f11..f095c20 100644 --- a/src/srvx.ts +++ b/src/srvx.ts @@ -30,6 +30,7 @@ export function srvx(options?: SrvxOptions): Plugin[] { exclude: mergedOptions.exclude, injectClientScript: mergedOptions.injectClientScript, loadModule: mergedOptions.loadModule, + prefix: mergedOptions.prefix, }), // Client build plugin