小球动画实现方式

来源:17-20 购物车小球动画实现(3)

ATWJSW

2017-01-31

我理解现在购物小球执行步骤:

  1. 点击cartcontrol组件中的”加号按钮“,dispatch一个事件, 同时传递event.target

  2. goods组件接收事件和target,执行_drop(target) 。

  3. goods组件在执行_drop(target) 中,获取shopcart子组件的ref,调用shopcart子组件的drop(el)方法

  4. shopcart组件执行drop(el)方法时,获取el在视口中的位置,编程式调用ball元素的过渡hook接口,执行css过渡。

event.targe从cartcontrol组件传递到goods组件,再传递到shopcart组件,只是为了获取”加号按钮“的位置。

是否可能在cartcontrol中直接获取”加号按钮“的dom元素来获取其位置,并由cartcontrol来执行过渡呢?


写回答

1回答

ustbhuangyi

2017-01-31

你对小球动画的思路理解基本正确,但是小球如果是作为 cartcontrol 组件的元素,那么就会"很多"小球了,因为有多个 cartcontrol 组件。而且你还需要想办法知道下落到 shopcart 组件里的位置。

0
0

Vue.js2.5+cube-ui重构饿了么App(经典再升级)

掌握Vue1.0到2.0再到2.5最全版本应用与迭代,打造极致流畅的WebApp

9868 学习 · 4162 问题

查看课程