mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
[improvement] SwipeCell: fix typo and adjust swipeLeaveTransition
method's parameter values (#3048)
This commit is contained in:
parent
4d85e56d83
commit
76a90eb89e
@ -21,7 +21,7 @@ export default sfc({
|
||||
data() {
|
||||
return {
|
||||
offset: 0,
|
||||
draging: false
|
||||
dragging: false
|
||||
};
|
||||
},
|
||||
|
||||
@ -55,13 +55,14 @@ export default sfc({
|
||||
const threshold = this.opened ? 1 - THRESHOLD : THRESHOLD;
|
||||
|
||||
// right
|
||||
if (direction > 0 && -offset > rightWidth * threshold && rightWidth > 0) {
|
||||
if (direction === 'right' && -offset > rightWidth * threshold && rightWidth > 0) {
|
||||
this.open('right');
|
||||
// left
|
||||
} else if (direction < 0 && offset > leftWidth * threshold && leftWidth > 0) {
|
||||
} else if (direction === 'left' && offset > leftWidth * threshold && leftWidth > 0) {
|
||||
this.open('left');
|
||||
// reset
|
||||
} else {
|
||||
this.swipeMove();
|
||||
this.swipeMove(0);
|
||||
}
|
||||
},
|
||||
|
||||
@ -70,7 +71,7 @@ export default sfc({
|
||||
return;
|
||||
}
|
||||
|
||||
this.draging = true;
|
||||
this.dragging = true;
|
||||
this.touchStart(event);
|
||||
|
||||
if (this.opened) {
|
||||
@ -96,9 +97,9 @@ export default sfc({
|
||||
return;
|
||||
}
|
||||
|
||||
this.draging = false;
|
||||
this.dragging = false;
|
||||
if (this.swiping) {
|
||||
this.swipeLeaveTransition(this.offset > 0 ? -1 : 1);
|
||||
this.swipeLeaveTransition(this.offset > 0 ? 'left' : 'right');
|
||||
}
|
||||
},
|
||||
|
||||
@ -127,7 +128,7 @@ export default sfc({
|
||||
|
||||
const wrapperStyle = {
|
||||
transform: `translate3d(${this.offset}px, 0, 0)`,
|
||||
transition: this.draging ? 'none' : '.6s cubic-bezier(0.18, 0.89, 0.32, 1)'
|
||||
transition: this.dragging ? 'none' : '.6s cubic-bezier(0.18, 0.89, 0.32, 1)'
|
||||
};
|
||||
|
||||
return (
|
||||
@ -143,7 +144,7 @@ export default sfc({
|
||||
class={bem('wrapper')}
|
||||
style={wrapperStyle}
|
||||
onTransitionend={() => {
|
||||
this.swipe = false;
|
||||
this.swiping = false;
|
||||
}}
|
||||
>
|
||||
{this.leftWidth ? (
|
||||
|
@ -36,7 +36,7 @@ exports[`drag and show left part 4`] = `
|
||||
</div>
|
||||
`;
|
||||
|
||||
exports[`drag and show left part 5`] = `
|
||||
exports[`drag and show right part 1`] = `
|
||||
<div class="van-swipe-cell">
|
||||
<div class="van-swipe-cell__wrapper" style="transform: translate3d(-100px, 0, 0); transition: .6s cubic-bezier(0.18, 0.89, 0.32, 1);">
|
||||
<div class="van-swipe-cell__left"></div>
|
||||
|
@ -1,6 +1,7 @@
|
||||
import SwipeCell from '..';
|
||||
import { mount, triggerDrag } from '../../../test/utils';
|
||||
|
||||
const THRESHOLD = 0.15;
|
||||
const defaultProps = {
|
||||
propsData: {
|
||||
leftWidth: 100,
|
||||
@ -24,14 +25,14 @@ it('drag and show left part', () => {
|
||||
expect(wrapper).toMatchSnapshot();
|
||||
});
|
||||
|
||||
it('drag and show left part', () => {
|
||||
it('drag and show right part', () => {
|
||||
const wrapper = mount(SwipeCell, defaultProps);
|
||||
|
||||
triggerDrag(wrapper, -50, 0);
|
||||
expect(wrapper).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test('on close prop', () => {
|
||||
it('on close prop', () => {
|
||||
let position;
|
||||
let instance;
|
||||
|
||||
@ -74,3 +75,22 @@ it('width equals zero', () => {
|
||||
});
|
||||
expect(wrapper).toMatchSnapshot();
|
||||
});
|
||||
|
||||
it('should reset after drag', () => {
|
||||
const wrapper = mount(SwipeCell, defaultProps);
|
||||
|
||||
triggerDrag(wrapper, (defaultProps.leftWidth * THRESHOLD - 1), 0);
|
||||
expect(wrapper.vm.offset).toEqual(0);
|
||||
});
|
||||
|
||||
it('disabled prop', () => {
|
||||
const wrapper = mount(SwipeCell, {
|
||||
propsData: {
|
||||
...defaultProps.propsData,
|
||||
disabled: true,
|
||||
}
|
||||
});
|
||||
|
||||
triggerDrag(wrapper, 50, 0);
|
||||
expect(wrapper.vm.offset).toEqual(0);
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user