本技能面向使用 Syncfusion React 通知类组件的开发者,提供从安装配置到高级用法的完整指导,覆盖 Toast、Message、Skeleton 和 Spinner 四个组件。
一、Toast(消息提示) Toast 组件用于显示简短、非侵入式的通知,可在配置的超时后自动消失。主要能力包括:通过模板支持富内容、操作按钮、进入/退出动画、精确定位,以及通过 ToastUtility 进行编程控制。配置方面支持设置标题与内容(纯文本、HTML、元素)、自定义目标容器、showCloseButton 手动关闭、showProgressBar 与 progressDirection(Ltr/Rtl)、newestOnTop 堆叠顺序、width 与 height 尺寸。定位支持九种预定义 X/Y 位置(Left、Center、Right / Top、Bottom)以及自定义像素和百分比坐标。超时与关闭支持 timeOut(默认 5000 毫秒)、悬停时 extendedTimeout(默认 1000 毫秒)、timeOut: 0 的持久提示、clickToClose 点击关闭、beforeClose 阻止移动端滑动关闭。模板与样式支持 template 属性、动态模板、语义化 CSS 类(e-toast-success、e-toast-info、e-toast-warning、e-toast-danger)。动画支持 FadeIn、FadeZoomIn、SlideBottomIn、ZoomIn、FlipLeftUpIn 等效果,默认 FadeIn/FadeOut。高级模式包括 ToastUtility.show() 快速提示、四种预定义类型(Information、Success、Error、Warning)、beforeOpen 中播放音频、限制同时显示数量、防止重复提示。可访问性遵循 WAI-ARIA(role="alert"、aria-live="assertive"、aria-label)、WCAG 2.2、Section 508、ADA,支持屏幕阅读器与 enableRtl。
二、Message(消息) MessageComponent 用于显示带视觉严重级别指示(图标与颜色)的上下文消息,支持五种严重级别(Normal、Success、Info、Warning、Error)、三种视觉变体(Text 默认、Outlined、Filled)、关闭图标、自定义模板及完整可访问性。内容可通过 content 属性或 JSX 子元素提供。图标方面,showIcon 控制严重级别图标显示(默认 true),showCloseIcon 控制关闭图标(默认 false),closed 事件处理关闭回调,visible 属性切换可见性。自定义支持内容对齐(left 默认、center、right)、cssClass 自定义外观、纯 CSS 渲染、JSX 或渲染函数模板、enableRtl、enablePersistence。可访问性遵循 WCAG 2.2、Section 508、ADA,支持键盘导航与屏幕阅读器。
三、Skeleton(骨架屏) SkeletonComponent 渲染模拟加载内容布局的动画占位形状,减少感知加载时间。shape 属性支持 "Circle"、"Square"、"Rectangle"、"Text"(默认);Circle/Square 需要 width,Rectangle/Text 需要 width 与 height。shimmerEffect 支持 "Wave"(默认)、"Pulse"、"Fade"。cssClass 用于自定义 CSS 覆盖,visible 属性根据加载状态切换骨架屏。可访问性遵循 WCAG 2.2、Section 508、ADA,支持 role="status"、aria-label、aria-live、aria-busy、label 属性、enableRtl 及 prefers-reduced-motion。
四、Spinner(加载指示器) Spinner 是阻塞目标元素交互的加载指示器,用于操作进行中时。安装包为 @syncfusion/ej2-react-popups。支持 createSpinner → showSpinner 工作流、显示/隐藏控制、全页覆盖层、setSpinner 全局配置、多种 SpinnerType(Material、Bootstrap5、Fluent2 等)、width 控制尺寸、标签文本、自定义 HTML 模板、一页多个 Spinner、异步数据获取与 finally 清理、React 状态同步、卡片与模态框内使用。
使用方式:各组件均需安装 @syncfusion/ej2-react-notifications@33.x.x(Spinner 为 @syncfusion/ej2-react-popups@33.x.x),导入对应主题 CSS(如 tailwind3.css),并在 React 组件中引入使用。技能强调代理使用时不得自主执行多步操作,安装、运行、创建文件前均需与用户确认,不得自主安装包或启动开发服务器。
适用场景:需要在 React 应用中实现用户通知、上下文消息、加载占位和加载指示的界面开发。限制:具体收费、价格、平台兼容性等资料暂未提供。