动画的类型标注没看懂
来源:5-7 Collapse 添加动画第二部分 - 尽善尽美

独自灿烂
2025-02-19
const TransitionEvents: Record<string, (el: HTMLElement) => void> = {
beforeEnter(el) {
el.style.height = '0px'
},
enter(el) {
el.style.height = `${el.scrollHeight}px`
},
beforeLeave(el) {
el.style.height = `${el.scrollHeight}px`
},
leave(el) {
el.style.height = '0px'
}
}
Record<string, (el: HTMLElement) => void> 这个TS老师可以说说么,豆包了一下不是很懂,老师求指教
写回答
1回答
-
同学你好
是一个对象类型,可以拆解为:
1. Record<K, V> 是 TypeScript 的一个工具类型,其实就是标注一个普通的对象(Object)
K: 键的类型
V: 值的类型
在这个例子中:键的类型是 string 值的类型是 (el: HTMLElement) => void(一个函数类型)
key 对应的就是 'beforeEnter' 等等这些名称,后面就是这个函数(el) { el.style.height = '0px' },
注意 el 就是 HTMLElement 类型的
10
相似问题
泛型
回答 1
关于Vue 中的TS类型
回答 1