这是什么?
@brillout/vite-plugin-import-build 自动加载您的服务器构建(即您的文件在 dist/server/) (中文(简体) ).
维琪 财务报告和审定财务报表 电报 自动将此插件添加到您的 Vite app 中 : 您没有什么可做的, 您通常可以忽略此插件 .
手动导入
大部分时间 @brillout/vite-plugin-import-build 能够自动导入您的服务器构建(即您的文件位于 dist/server/)——你无所事事.
不过 @brillout/vite-plugin-import-build 如果你使用Yarn PnP,你就会继续跟踪错误,那就行不通了。 工作范围是手动导入您的服务器构建 .
# Yarn PnP users always get this error:
[@brillout/vite-plugin-import-build][Wrong Usage] Cannot find server build. (Re-)build your app
and try again. If you still get this error, then you may need to manually import the server build.
[尖叫声] 如果你没有使用Yarn PnP 并且你不断得到这个错误, 那么这是一个错误,应该被修复——请 打开新问题。 。 。 .
要手动导入您的服务器构建 :
// server.js
// Load server build, see https://github.com/brillout/vite-plugin-import-build#manual-import
import './path/to/dist/server/importBuild.cjs'
// Your server code (Express.js, Vercel Serverless/Edge Function, Cloudflare Worker, ...)
// ...
确保导入 dist/server/importBuild.cjs 只有生产。 见 有条件的手动导入 如果您的生产和开发共享同一服务器条目文件.
如果您使用 vite.config.js > 翻译: build.outDir 然后替换 dist/server/importBuild.cjs 与 ${build.outDir}/server/importBuild.cjs。 。 。 .
它会做什么
[注] 这一部分是针对图书馆作者的. 作为一个用户,你不需要读这个。 如果你有问题,请读 手动导入 或者联系维护者.
@brillout/vite-plugin-import-build 做两件事:
- 生成“ 导入构建” 文件
dist/server/importBuild.cjs。 。 。 . - 生成“ 自动导入者” 文件
node_modules/@brillout/vite-plugin-import-build/dist/autoImporter.js。 。 。 .
这个 导入构建 文件( 编号dist/server/importBuild.cjs)使维克和Telefunc等工具能够将其服务器条目文件合并到一个单独的条目文件,地址是: dist/server/importBuild.cjs我们建议迅速研究一下 dist/server/importBuild.cjs:你会看到它本质上是装入内存的已建用户文件 dist/server/ (例如,用于传出 .telefunc.js 用户文件,并为 Vike 传输 +Page.js 用户文件).
这个 自动导入器 文件( 编号node_modules/@brillout/vite-plugin-import-build/dist/autoImporter.js自动导入 dist/server/importBuild.cjs,这样用户无需手动导入 dist/server/importBuild.cjs 如以下所示。 这是汽车进口商的唯一目的.
// server/index.js (the user's server entry file)
// Without the auto importer, the user would have to manually import dist/server/importBuild.cjs
// in his server entry file like this:
if (process.env.NODE_ENV === 'production') {
await import('../dist/server/importBuild.cjs')
}
见 汽车进口商如何运作 学习更多.