vue实现collapse折叠板动画,可设置动画时间,动画延迟等


2023年12月15日发(作者:嗨)

新建内容如下export default { inheritAttrs: false, props: { duration: { type: [Number, Object], default: 300 }, delay: { type: [Number, Object], default: 0 }, group: Boolean, tag: { type: String, default: "span" }, origin: { type: String, default: "" }, styles: { type: Object, default: () => { return { animationFillMode: "both", animationTimingFunction: "ease-out" }; } } }, computed: { componentType() { return ? "transition-group" : "transition"; }, hooks() { return { ...this.$listeners, beforeEnter: Enter, afterEnter: el => { pStyles(el); this.$emit("after-enter", el); }, beforeLeave: Leave, leave: , afterLeave: el => { pStyles(el); this.$emit("after-leave", el); } }; } }, methods: { beforeEnter(el) { let enterDuration = : on; ionDuration = `${enterDuration}ms`; let enterDelay = ? : ; ionDelay = `${enterDelay}ms`; les(el); this.$emit("before-enter", el); }, cleanUpStyles(el) { ().forEach(key => { const styleValue = [key]; if (styleValue) { [key] = ""; }

= "0"; gTop = 0; gBottom = 0; les(el); }, enter(el) { rflow = ow; if (Height !== 0) { = Height + "px"; gTop = dingTop; gBottom = dingBottom; } else { = ""; gTop = dingTop; gBottom = dingBottom; } ow = "hidden"; }, afterEnter(el) { tion = ""; = ""; ow = rflow; }, beforeLeave(el) { if (!t) t = {}; dingTop = gTop; dingBottom = gBottom; rflow = ow; = Height + "px"; ow = "hidden"; les(el); }, leave(el) { let leaveDuration = : on; if (Height !== 0) { // for safari: add class after set height, or it will jump to zero height suddenly, weired tion = tionStyle(leaveDuration); = 0; gTop = 0; gBottom = 0; } // necessary for transition-group olutePosition(el); }, afterLeave(el) { tion = ""; = ""; ow = rflow; gTop = dingTop; gBottom = dingBottom; } }, render(h) { return h( "transition", { props: { is: entType, tag: }, on: { "before-enter": Enter, "after-enter": nter,


本文发布于:2024-09-26 02:17:35,感谢您对本站的认可!

本文链接:https://www.17tex.com/fanyi/2852.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:新建   内容
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议