src/modern.runtime.ts 定义 Runtime 配置,同时支持静态配置和动态配置,使用姿势请参考 Runtime 配置用于动态配置应用。
Runtime 配置通常可以在 modern.config.js 的 runtime 空间下配置,如 router 配置。
modern.config.js 中的配置是构建时确定的,如果一些配置参数是运行时获取的,或者配置参数是来自于源码中的一个模块(如组件),就需要使用 defineConfig API 进行运行时配置。
@modern-js/app-tools 拥有同名 API,用于为配置提供 TS 类型,请开发者加以区分。
React.ComponentType<any>,App 根组件。Record<string, any>,运行时的配置。defineConfig 里可配置 runtime.state、runtime.router 等运行时配置。
defineConfig 在配置某个属性之前,如 router,需要确保 modern.config.js 已经配置开启了该功能。
defineConfig 传入的配置会和 modern.config.js 中的配置浅 merge,以 router 为例,最终应用的配置如下: