@evjs/bundler-utopack (英语)
默认的 utoopack (@utoo/packevjs框架的捆绑适配器.
此套件导出 utoopackAdapter,用于执行 BundlerAdapter
接口 ev build 财务报告和审定财务报表 ev dev。 。 。 .
适配器需要 @utoo/pack 1.6.0或较新. 插件属性浏览器
模块引用还检查已装入的本地装订在运行时的能力.
适配器与 Utoopack 的 API 程序集成, 编译混凝土
输入 BuildPlan,并返回为框架输出链接建立事实.
其宣布的能力是权威边界:
支持服务器发送的页面条目,而需要 RSC 或
框架飞行前PR失败.
土著所有权发展
Utoopack 开发使用一个长寿的本地所有者工人来完成
ev dev 命令。 所有权被故意分生:
| 终身 | 拥有者 | 责任 |
|---|---|---|
ev dev 进程 | 框架主机 | 会话协议,函数值代用重写,以及框架监督. 它没有装入Utoopack的原生装订. |
ev dev 进程 | 土著所有者工人 | Utoopack的本地装订,流程-全局加载器调度器,加载器-工人池,以及每一个相继的本地工程. |
| 不可移动会话 | 土著所有者工人 | 一个工程,开发服务器,订阅,以及持续缓存锁. 在下届届会开始前,这些内容完全接近. |
会话替换运行 Utoopack 自身的优雅清理 将其成功的进程退出转换为会话边界。 那个工人 用于下届不可更改的会话。 所有者启动失败, 装入器 排程器故障、出乎意料的出站和关闭超时是故障停止 主机从不在同一过程中创建第二个本地所有者 。 启动也 拒绝一个已经装入 Utoopack 的本地装订主机, 因为 将重建跨环境的本土所有权.
使用量
此适配器默认在 evjs 中启用 。 您不需要手动配置它, 除非您正在超越另一个捆绑器 .
如果您需要明确配置:
import { defineConfig } from "@evjs/ev";
import { utoopackAdapter } from "@evjs/bundler-utoopack";
export default defineConfig({
bundler: utoopackAdapter,
});
插件帮助
这个 utoopack() 帮助者将您的插件钩子包成类型安全配置突变 :
import { merge, utoopack } from "@evjs/bundler-utoopack";
import { defineConfig } from "@evjs/ev";
import { definePlugin } from "@evjs/ev/plugin";
const myUtoopackPlugin = definePlugin({
id: "my-utoopack-plugin",
setup() {
return {
configureBundler: utoopack((config) => {
// config is typed as ConfigComplete from @utoo/pack
merge(config, {
define: {
__MY_VAR__: JSON.stringify("value"),
},
});
}),
};
},
});
export default defineConfig({
plugins: [myUtoopackPlugin()],
});