@cratis/components.mui

中文文档
4.40.0发布于 2026/11/04MITTypeScriptES Module零依赖构建来源已验证近 30 天下载 3922

Cratis组件渲染器ABI v1的材料 UI 演示适配器.

中文使用文档
文档目录3 节
  1. 安装
  2. 主题整合
  3. 同伴政策

@cratis/components.mui

Cratis组件渲染器ABI v1中的9个稳定演示槽的材料UI适配器. 软件包共享组件寄存器的发布版本, 而渲染器 ABI 仍然 单独版本。 出口一个稳定 CratisPresentationUiLibrary 很明显, muiUiLibrary。这证明九层原始 适应,从不全目录替换.

版本数 : 每次发布 @cratis/components.mui 出版的版本与 @cratis/components 并宣布该版本的对应方。 安装和升级两者 组合在一起,在同一版本.

安装

npm install @cratis/components.mui@^4 @cratis/components@^4 \
  @mui/material@^9 @emotion/react@^11 @emotion/styled@^11 react@^19 react-dom@^19

基于节点的构建,测试,和服务器的上线环境需要Node.js 22或更新.

选择应用程序组件提供者的适配器 :

import { CratisComponentsProvider } from '@cratis/components';
import { muiUiLibrary } from '@cratis/components.mui';

export const Application = () => (
    <CratisComponentsProvider value={{ locale: 'en-US' }} library={muiUiLibrary}>
        <main>Application content</main>
    </CratisComponentsProvider>
);

执行命令或运行查询的组件也需要Arc's <Arc> 提供者从 @cratis/arc.react 环绕这棵树;适配器和 CratisComponentsProvider 替换它.

适配器覆盖按钮,图标按钮,文本输入,文本区,复选箱,收音机,开关, 进步吧,还有水面 它故意排除了MUI X 并且没有执行五个原子 交互槽.

主题整合

列表提供者挂载 MUI ThemeProvider。一个外部 CSS 可变 MUI 主题被再利用. 外不可变主题被转换成等同的 CSS 可变主题,所以它的调色板和 其他价值观仍然有效。 没有外部提供者, MUI 的默认主题就变得正常 CSS-可变驱动主题. 转换在服务器渲染过程中被纪念和确定.

将应用程序定制到 MUI ThemeProvider (从) @mui/material/styles页:1 CratisComponentsProvider在此节选中, applicationTheme 是应用程序的 createTheme 结果 :

<ThemeProvider theme={applicationTheme}>
    <CratisComponentsProvider value={{ locale: 'en-US' }} library={muiUiLibrary}>
        <Application />
    </CratisComponentsProvider>
</ThemeProvider>

渲染器提供者 ABI 只接收 children 和不秘密的布置 无法接收情感缓存。 SSR 主机 每个请求必须创建情感缓存, 上情感的 CacheProvider 组件之外 提供者,并从同一请求本地缓存中提取关键样式。 共享缓存 请求可以泄露样式和命令。 RTL 还需要主机 MUI 主题方向和 用RTL Stylis插件配置的情感缓存。 这些是应用程序/主机集成 (b) 与《公约》第2条第1款(a)项(a)项和(b)项(b)项(b)项(c)项(c)项(c)目(c)项(c)目(c)项(c)项(c)目(c)项(c)目(c)项(c)目(c)目(c)目(c)目(c)和(c)项(c)项(c)项(c)项(c)项(c)项(c)项(c)目(c)项(c)目(c)目(c)项)和(c)项(c)项(c)项(c)目(c)目(c)目(c)项)项(c)项(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(c)目(a)目(a)项)项.

同伴政策

毛里求斯 核心范围为 >=9 <10, (中文(简体) ), @emotion/react 改为 >=11.5 <12, (中文(简体) ), @emotion/styled 改为 >=11.11 <12,以及 React/ReactDOM 到 React 19 。 供应商包是同行. 存储器的包装消费者矩阵既证明了这些有效的下限,也证明了 当前最高的相容边界; 准确的当前版本仍然只有依赖性.

来源清单声明 @cratis/components >=4 <5,主要组件,其生成ABI 并稳定适配器执行的演示文稿。 发布步骤替换为 因此,公布的适配器要求 @cratis/components 放开它 运出.

见 文 件 交 织 对有限度的证据和 第三次议会 NoTICES.md 对上游许可.

版本与发布记录

@cratis/components.mui 共发布 83 个版本,首次发布于 2026/08/31;过去 12 个月发布了 83 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
4.40.0latest2026/11/046 天前
4.39.52026/11/046 天前
4.39.42026/11/047 天前
4.39.32026/11/037 天前
4.39.22026/11/037 天前
4.39.12026/11/037 天前

其他发布通道:bootstrap → 0.0.0。

关于 @cratis/components.mui 的常见问题

@cratis/components.mui 是什么?

Cratis组件渲染器ABI v1的材料 UI 演示适配器.

如何安装 @cratis/components.mui?

在项目目录运行 npm install @cratis/components.mui,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^19.0.0)、react-dom(^19.0.0)、@mui/material(>=9 <10)、@emotion/react(>=11.5 <12)、@emotion/styled(>=11.11 <12)、@cratis/components(4.40.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@cratis/components.mui 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cratis/components.mui 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cratis/components.mui 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@cratis/components.mui 可以商用吗?

@cratis/components.mui 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cratis/components.mui 的下载量有多少?

根据 npm 官方下载统计,@cratis/components.mui 在 2026/10/11 – 2026/11/09 这 30 天内被下载 3,922 次,日均约 131 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cratis/components.mui 还在维护吗?

最新版本 4.40.0 发布于 2026/11/04(6 天前);至今共发布 83 个版本,其中过去 12 个月发布了 83 个;首次发布于 2026/08/31。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。