将依赖项捆绑到便携式 Astro 服务器

问题描述 投票:0回答:1

我有一个带有 SSR 渲染的 Astro 项目。

export default defineConfig({
  output: "server",
  adapter: node({
    mode: "standalone"
  })
});

运行

npm run build
时,服务器输出到
./dist/server/entry.mjs
。 我正在尝试找到某种方法将依赖项捆绑到服务器文件中,以便服务器文件夹能够独立工作,而无需放置在
node_modules
文件夹旁边。类似于 esbuild 为节点打包

是的,我知道这是服务器代码,您不必捆绑代码。但我有我的理由!

astrojs
1个回答
0
投票

我找到了解决办法。您可以通过 Astro 配置将配置传递给 Vite。设置

vite.ssr.noExternal: true
将捆绑所有依赖项。

import { defineConfig } from 'astro/config';
import node from "@astrojs/node";

export default defineConfig({
  output: "server",
  adapter: node({
    mode: "standalone"
  }),
  vite: {
    ssr: {
      noExternal: true
    }
  }
});
© www.soinside.com 2019 - 2024. All rights reserved.