App 是 Esmx 框架的应用抽象,提供了统一的接口来管理应用的生命周期、静态资源和 SSR。
export default {
async devApp(esmx) {
return import('@esmx/rspack').then((m) =>
m.createRspackHtmlApp(esmx, {
config(rc) {
}
})
);
}
}interface App {
middleware: Middleware;
render: (options?: RenderContextOptions) => Promise<RenderContext>;
build?: () => Promise<boolean>;
destroy?: () => Promise<boolean>;
}Middleware静态资源处理中间件。
开发环境:
no-cache 缓存策略生产环境:
.final.xxx)server.use(esmx.middleware);(options?: RenderContextOptions) => Promise<RenderContext>SSR 函数。根据运行环境提供不同实现:
start):加载构建后的服务端入口文件(entry.server)执行渲染dev):加载源码中的服务端入口文件执行渲染const rc = await esmx.render({
params: { url: '/page' }
});
res.end(rc.html);() => Promise<boolean>生产环境构建函数,用于资源打包和优化。
返回值:
truefalse() => Promise<boolean>资源清理函数,用于关闭服务器、断开连接等。
返回值:
truefalse