# SwipeCell
### Install
``` javascript
import Vue from 'vue';
import { SwipeCell } from 'vant';
Vue.use(SwipeCell);
```
## Usage
### Basic Usage
```html
```
### Async close
```html
```
```js
export default {
methods: {
onClose(clickPosition, instance) {
switch (clickPosition) {
case 'left':
case 'cell':
case 'outside':
instance.close();
break;
case 'right':
Dialog.confirm({
message: 'Are you sure to delete?'
}).then(() => {
instance.close();
});
break;
}
}
}
}
```
## API
### Props
| Attribute | Description | Type | Default |
|------|------|------|------|
| name | Identifier of SwipeCell | `string | number` | - |
| on-close | Callback function before close | `Function` | - |
| disabled | Whether to disabled swipe | `boolean` | `false` |
| left-width | Width of the left swipe area | `number` | `auto` |
| right-width | Width of the right swipe area | `number` | `auto` |
| stop-propagation | Whether to stop touchmove event propagation | `boolean` | `false` |
### Slots
| Name | Description |
|------|------|
| default | custom content |
| left | content of left scrollable area |
| right | content of right scrollabe area |
### Events
| Event | Description | Arguments |
|------|------|------|
| click | Triggered when clicked | Click positon (`left` `right` `cell` `outside`) |
### onClose Params
| Attribute | Description | Type |
|------|------|------|
| clickPosition | Click positon (`left` `right` `cell` `outside`) | `string` |
| instance | SwipeCell instance | `object` |
| detail | Detail info | `object` |
### Methods
Use ref to get SwipeCell instance and call instance methods
| Name | Attribute | Return value | Description |
|------|------|------|------|
| open | position: `left | right` | - | open SwipeCell |
| close | - | - | close SwipeCell |