明霞山资源网 Design By www.htccd.com
演示
演示1
演示2
演示3
一、功能描述
1、预设过渡
- 支持区分enter、leave
- 支持预设过渡的组合
- 特别强调:支持元素展开、闭合的过渡。name=='slide'或['slide'[,]],即可实现,无需外部传height
- 支持外部传类来过渡或动画
/* 预留过渡 */ /** *1、fade *2、移动:up,right,down,left四个方向 *3、scale缩放:默认是从0->1,还预设了一个从1->1.2的 *4、rotate旋转。顺时针旋转。角度用以上方向来指示。如果逆时针中间加上reserve。 如rotate-right表示选择180度,rotate-down-reserve表示逆时针旋转90度。 预设了,90,180,270,360;-90.-180,-270,-360角度的旋转 *5、slide:内容块张开还是隐藏。 √ *说明:以上是整体过渡的单元:传name的时候,可以多个组合,形成更加复杂的过渡。 *如果这些组合,还不够你的使用,可以部分或全部过渡通过外部传类来实现。 */
2、蒙层相关功能
- 无蒙层:mask:0。//此时过渡元素为卡槽
- 透明蒙层1:mask:1。//此时过渡元素为卡槽。如:左移100%,只是移动卡槽宽度的100%
- 透明蒙层2:mask:2。//此时过渡元素为蒙层。如:左移100%,则是移动蒙层宽度的100%
- 半透明蒙层3:mask:3。///此时过渡元素为蒙层。如:弹窗上移,则是蒙层上移。
- 半透明蒙层4:mask:4。///此时过渡元素为卡槽。如:弹窗上移,则是蒙层自身是缩放。卡槽上移
3、卡槽样式完美设置
- 由以上可知。蒙层由多种情况。但
- 完美支持百分比设置:外部传custom-class即可
4、其它细节
- 完美支持自定义top、tab导航情况
- 蒙层(包括透明蒙层)下,预设5个布局位置:结合方向等,可实现左右抽屉、上下弹出、中间淡入淡出等效果
- 支持leave动画结束后,通知父节点:可实现多节点联动。如:手风琴效果
5、支持所有的节点。包括组件作为卡槽内容
- 对需要动画的元素/组件套上这个组件即可实现过渡动画
- 其实整个小程序页面做进入过渡,也挺炫酷的。类似支付宝页面进蚂蚁森林
二、可传属性(可配置项)
过渡相关类
externalClasses: [ 'enter-class', 'enter-active-class', 'enter-to-class', 'leave-class', 'leave-active-class', 'leave-to-class', ],
内容(卡槽)样式
externalClasses:[ 'custom-class', ]
说明:完美支持像素、百分比、或者absolute的设置
配置项
properties: { name: { type: [String,Object,Array],//支持区分enter、leave过渡 value:{ enter:{ type:[String,Array], value:['up','fade'],//支持传数组,即内设的过渡,可组合 }, leave:"fade" } }, show: { type: Boolean, value: false }, duration: { //run Time ms type: [String,Number,Object],//`过渡时间,支持区分enter、leave。如果enter不需要过渡,enter:0即可` value:{ enter:300, leave:300, } }, //leave过渡之后状态是否保留。而不是display:none //带有mask,避免影响页面操作。这边强制禁止保留状态。适用于非mask的情况。mask:0和1、2(1、2是全透明的,设置了属性虽然不会影响页面操作。建议不宜保留) retain:{ type:Boolean, value:false }, mask: { //`支持选蒙层类型:预设5中类型` 以下四个个是配套的,针对mask的配置 type: [String,Number],//如果为0,表示没有蒙层。1、2:全透明蒙层 value: '0', }, //顶部的margin。如果没有自定义navBar或tabBar则,fixed区域为中间的可视区域。否则为中间可视区域+自定义bar区域。 //因此为了兼容,如果自定义了bar,则要传值进来修正蒙层的区域。 margin:{//记得带上单位哦。 type: Object, value:{ top:'0px', bottom:'0px',} }, position: { //`支持卡槽位置:top、right、bottom、left、center`如果有mask,则mask中的卡槽位置是哪里。如果要再偏移,则外部卡槽使用margin来实现即可 type: String, value: "right", }, close: { //如果有mask,点击Mask是否关闭蒙层 type: Boolean, value: false }
三、完整代码(demo)
git代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
微信小程序,动画组件,vue
明霞山资源网 Design By www.htccd.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
明霞山资源网 Design By www.htccd.com
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。