# manifest
- 类型:`boolean | PluginManifestOptions`
- 默认值:`undefined`
用于控制是否生成 manifest ,以及对应的生成配置。启用后插件会在每次构建中同时产出 `mf-manifest.json` 与 `mf-stats.json`(名称可通过 `fileName` 自定义),并写入到构建产物中,供其他工具在 `processAssets` 钩子或构建结果中直接读取。
- `mf-stats.json`:包含完整的构建统计信息,如 exposes/shared/remotes 的资源列表、`metaData`(插件版本、构建信息、`remoteEntry` 等)以及额外的资产分析结果,适合用于后续合并或诊断。
- `mf-manifest.json`:在 stats 基础上提炼出的运行时清单,结构稳定,供 Module Federation 消费端在加载远程模块时读取。文件中的 exposes/shared/remotes 对应线上对外暴露的能力。
`PluginManifestOptions` 类型如下:
```ts
interface PluginManifestOptions {
filePath?: string;
disableAssetsAnalyze?: boolean;
fileName?: string;
}
```
## filePath
- 类型:`string`
- 默认值:`undefined`
manifest 存放路径
## fileName
- 类型:`string`
- 默认值:`'mf-manifest.json'`
manifest 文件名称
如果设置了 `fileName`,对应的 stats 文件名会自动附加 `-stats` 后缀(例如 `fileName: 'mf.json'` 时会同时生成 `mf.json` 与 `mf-stats.json`)。所有文件都会写入 `filePath`(若配置)指定的子目录。
## disableAssetsAnalyze
:::warning
不建议用户设置此配置,设置后,preload 功能将失效!
:::
- 类型:`boolean`
- 是否必填:否
- 默认值:`undefined`
asset analyze 在复杂项目中会耗费较长时间,设置该选项后,会禁用 asset analyze,优化构建时间。
如果项目是纯消费者,默认在 dev 中会设置为 true 。
如果设置为 true ,那么 manifest 中将不会有 shared 、exposes 字段,且 remotes 中也不会有 assets 。