SEMI DESIGN 源码学习(五)工具提示

Toast 组件位于 packages/semi-ui/toast/index.tsx

文件默认导出一个 ToastList 类,实际项目中使用的是这个 ToastList 类的静态方法 info, warning, error, success

而他们是由 create 方法创建,这个方法判断页面中是否有 ToastList 组件,没有则新建一个 ToastList,否则直接在现有 ToastList 添加元素。

添加,删除,更新这些操作使用 foundation 进行,这个 foundation 属性是 ToastList 的核心。

在构造器方法看到 foundation 属性是一个接受一个 adapterToastListFoundation 实例,需要看看这个 ToastListFoundation 是啥。

ToastListFoundation 实际上维护的是数组 ToastList.state.list

通过 addupdate 方法添加和更新 toastOpts

最后这个数组的数据用于 ToastListrender 方法渲染每一个 Toast

本文完。

相关推荐
扶苏10029 分钟前
深入 Vue 3 computed:原理、实战与避坑指南
前端·javascript·vue.js
盛夏绽放25 分钟前
流式响应 线上请求出现“待处理”问题
前端·后端·nginx·proxy
weixin199701080161 小时前
虾皮商品详情页前端性能优化实战
前端·性能优化
高德开放平台1 小时前
高德开放平台JS API插件支持WebMCP:重新定义AI与网页交互的新时代
javascript·人工智能·开发者·高德地图
低代码布道师1 小时前
Next.js 16 全栈实战(三):数据库建模与动态菜单实现
开发语言·javascript·数据库
ArcX1 小时前
手把手从 0 诠释大模型 API 的本质: Tools + MCP + Skills
前端·后端·ai编程
慧一居士1 小时前
vue项目中,tsx格式的文件是什么,怎样使用
前端·vue.js
马尔代夫哈哈哈1 小时前
SpringBoot 统一功能处理
java·前端·spring boot
慧一居士2 小时前
tsconfig.json完整使用配置介绍和示例
前端·vue.js
哆啦A梦15882 小时前
Vue3魔法手册 作者 张天禹 07_标签
前端·vue.js·typescript