mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
perf(NoticeBar): flip
This commit is contained in:
parent
17d752f882
commit
02219625fb
@ -92,7 +92,7 @@ export default createComponent({
|
||||
const contentHeight = `${offsetHeight}px`;
|
||||
wrapper.style.height = expanded ? 0 : contentHeight;
|
||||
|
||||
// use double raf to ensure animation can start in mobile safari
|
||||
// use double raf to ensure animation can start
|
||||
doubleRaf(() => {
|
||||
wrapper.style.height = expanded ? contentHeight : 0;
|
||||
});
|
||||
|
@ -60,11 +60,15 @@ export default createComponent({
|
||||
this.offset = this.wrapWidth;
|
||||
this.duration = 0;
|
||||
|
||||
setTimeout(() => {
|
||||
this.offset = -this.contentWidth;
|
||||
this.duration = (this.contentWidth + this.wrapWidth) / this.speed;
|
||||
this.$emit('replay');
|
||||
}, 100);
|
||||
// wait for Vue to render offset
|
||||
this.$nextTick(() => {
|
||||
// use double raf to ensure animation can start
|
||||
doubleRaf(() => {
|
||||
this.offset = -this.contentWidth;
|
||||
this.duration = (this.contentWidth + this.wrapWidth) / this.speed;
|
||||
this.$emit('replay');
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
reset() {
|
||||
|
@ -45,7 +45,7 @@ test('replay event', async () => {
|
||||
});
|
||||
|
||||
wrapper.find('.van-notice-bar__content').trigger('transitionend');
|
||||
await later(150);
|
||||
await later(50);
|
||||
expect(wrapper.emitted('replay')).toBeTruthy();
|
||||
});
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user