SuperAPI AI 工具集

igniteui-react-components

前端与建站

查看项目

更新于 10-16 06:17

技能介绍

Ignite UI for React 的 Igr* 组件是围绕 igc-* Web Components 的 React 封装,以下规则由此而来。

必要事项:必须导入主题 CSS,否则组件无样式且图标异常。igniteui-react、igniteui-react-grids、igniteui-react/grid-lite、igniteui-react-dockmanager 无需 .register(),封装在导入时自动注册元素;图表、仪表和地图(独立旧包)则需 .register()。CSS 选择器应指向 igc-*,不要写 IgrButton;阴影 DOM 内部使用 ::part()。事件是 CustomEvent 而非 React SyntheticEvent,需读取 e.detail。除非有要求,不要给 IgrColumn / IgrGridLiteColumn 设置列宽。图表、仪表、地图和网格必须放在显式设置尺寸的容器中,否则高度为零。

包与导入:核心 UI(MIT)安装 igniteui-react,从 igniteui-react 导入;Grid Lite(MIT)安装 igniteui-react 与 igniteui-grid-lite,从 igniteui-react/grid-lite 导入;Data/Tree/Pivot/Hierarchical Grid 安装 igniteui-react-grids,从 igniteui-react-grids 导入;Dock Manager 安装 igniteui-react-dockmanager;图表、仪表、地图分别安装 igniteui-react-charts / -gauges / -maps。商业包也以 @infragistics/… 发布,工作区已使用时请沿用该作用域及对应 CSS 路径。igniteui-grid-lite 是 igniteui-react 的可选 peer,Grid Lite 需两者都装。

快速开始:npm install igniteui-react;在 main.tsx 先导入主题再写覆盖样式,例如 import 'igniteui-webcomponents/themes/light/bootstrap.css'; 并从 igniteui-react 导入 IgrButton、IgrInput 等。主题路径为 igniteui-webcomponents/themes/{light|dark}/{bootstrap|material|fluent|indigo}.css。网格需要额外导入 igniteui-react-grids/grids/themes/{light|dark}/<design-system>.css。Next.js 没有单一入口,需在 app/layout.tsx 或每个使用组件的 'use client' 文件中导入主题 CSS。

参考文件:COMPONENTS.md 用于选择组件;USAGE.md 涉及 JSX、插槽、事件、refs、表单与 TypeScript;DATAVIZ.md 涉及图表、仪表、地图、Grid Lite 与网格列;MCP.md 用于查询权威 API 文档和设置 MCP 服务器;TROUBLESHOOTING.md 用于排查渲染问题。组件 API 随版本变化,建议优先使用 igniteui-cli MCP 服务器(get_doc、get_api_reference、search_api)查询属性名、插槽名、事件名和枚举值;没有 MCP 时,阅读 node_modules/igniteui-webcomponents/components/<component>/ 或 igniteui-webcomponents-grids/grids/lib/ 下的 .d.ts 文件,其中带有 @slot、@csspart、@fires、@cssproperty 注解。相关技能包括 igniteui-react-customize-theme、igniteui-react-optimize-bundle-size、igniteui-react-migrate-grid-lite-to-premium。