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

本文完。

相关推荐
松涛和鸣20 分钟前
DAY43 HTML Basics
linux·前端·网络·网络协议·tcp/ip·html
前端 贾公子26 分钟前
剖析源码Vue项目结构 (一)
前端·javascript·vue.js
狂龙骄子29 分钟前
jQuery表单验证插件全攻略
前端·javascript·jquery·jquery表单验证
十铭忘1 小时前
Vue3实现Pixso中的钢笔工具
开发语言·javascript·vue
forestsea1 小时前
从 XMLHttpRequest 到 Fetch API:现代前端网络请求的演进与迁移指南
前端·网络
XiaoYu20021 小时前
第4章 Nest.js业务合并
前端
局i1 小时前
【无标题】
前端·javascript·vue.js
前端小L1 小时前
双指针专题(四):像毛毛虫一样伸缩——「长度最小的子数组」
javascript·算法·双指针与滑动窗口
沛沛rh451 小时前
React入门:从一个简单的Hello World开始
前端·react.js·前端框架
谢尔登2 小时前
Vue3 应用实例创建及页面渲染底层原理
javascript·vue.js·ecmascript