小球动画问题

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

拖车板牙爵士

2016-12-06

小球没有动画效果,瞬间移动到底部购物车的,没有进入before

shopcart.vue代码如下:

methods: {

drop (el) {

for (let i = 0; i < this.balls.length; i++) {

let ball = this.balls[i];

if (!ball.show) {

ball.show = true;

ball.el = el;

this.dropBalls.push(ball);

return;

}

}

}

},

transitions: {

drop: {

before (el) {

let count = this.balls.length;

while (count--) {

let ball = this.balls[count];

if (ball.show) {

let rect = ball.el.getBoundingClientRect();

let x = rect.left - 32;

let y = -(window.innerHeight - rect.top - 22);

el.style.display = '';

el.style.webkitTransform = `translate3d(0,${y}px,0)`;

el.style.transform = `translate3d(0,${y}px,0)`;

let inner = el.getElementsByClassName('inner-hook')[0];

inner.style.webkitTransform = `translate3d(${x}px,0,0)`;

inner.style.transform = `translate3d(${x}px,0,0)`;

}

}

},

enter (el) {

/* eslint-disable no-unused-vars */

let rf = el.offestHeight;

this.$nextTick(() => {

el.style.webkitTransform = 'translate3d(0,0,0)';

el.style.transform = 'translate3d(0,0,0)';

let inner = el.getElementsByClassName('inner-hook')[0];

inner.style.webkitTransform = 'translate3d(0,0,0)';

inner.style.transform = 'translate3d(0,0,0)';

});

},

afterEnter (el) {

let ball = this.dropBalls.shift();

if (ball) {

ball.show = false;

el.style.display = 'none';

}

}

}

}

cartcontrol.vue代码如下:

methods: {

addCart(event) {

if (!event._constructed) {

return;

};

if (!this.food.count) {

Vue.set(this.food, 'count', 1);

} else {

this.food.count++;

};

this.$dispatch('cart.add', event.target);

},

decreaseCart(event) {

if (!event._constructed) {

return;

};

if (this.food.count) {

this.food.count--;

};

}

}

goods.vue代码如下:

_drop(target) {

this.$refs.shopcart.drop(target);

},


events: {

'cart.add'(target) {

this._drop(target);

}

}


写回答

2回答

ustbhuangyi

2016-12-06

哈哈,如果是 webstorm 是有提示的~

0
2
拖车板牙爵士
webstorm 我安装过了,请问我要安装哪些插件,记得你视频里提过一嘴,没翻出来
2016-12-07
共2条回复

拖车板牙爵士

提问者

2016-12-06

问题找到了:offsetHeight这货写错了,不报错也是醉了,找好久

0
0

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

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

9868 学习 · 4162 问题

查看课程