docs_vue2/one/docs/directives/v-longpress.md

61 lines
1.9 KiB
Markdown
Raw Normal View History

2020-08-13 11:47:56 +08:00
# v-longpress
## 简介
`v-longpress` 指令用于处理鼠标长按事件。
## 示例
## API
:::tip
指令的具体用法请参考[官方文档](https://cn.vuejs.org/v2/guide/syntax.html#%E6%8C%87%E4%BB%A4)。更多详细参数请参考[自定义指令](https://cn.vuejs.org/v2/guide/custom-directive.html#%E9%92%A9%E5%AD%90%E5%87%BD%E6%95%B0%E5%8F%82%E6%95%B0)。
:::
### 绑定值
类型:`function | Object`。
2020-08-13 11:47:56 +08:00
使用 `function` 类型则绑定值表示触发长按或后续重复触发的回调函数。例如:
```html
<button v-longpress="handleLongPress">+</button>
```
使用 `Object` 类型时绑定值可完整配置所有参数。例如:
```html
<button v-longpress="{
timeout: 500,
handler: handleLongPress,
repeat: true,
repeatInterval: 100
}">+</button>
```
| 参数 | 类型 | 默认值 | 描述 |
| -- | -- | -- | -- |
| `timeout` | `number` | `longpress.timeout` | 触发长按等待的毫秒数。可进行[全局配置](#configs-longpress-timeout)。 |
2020-08-13 11:47:56 +08:00
| `handler` | `function` | `function() {}` | 触发长按及后续重复触发时的回调函数。 |
| `repeat` | `boolean` | `false` | 保持长按时是否重复触发回调,类似按下键盘按键后连续自动输入的效果。 |
| `repeatInterval` | `number` | `longpress.repeatInterval` | 重复触发回调间隔的毫秒数。可进行[全局配置](#configs-longpress-repeatInterval)。 |
2020-08-13 11:47:56 +08:00
:::warning
`Object` 类型提供的参数会覆盖通过指令参数、修饰符指定的参数。
2020-08-13 11:47:56 +08:00
:::
### 修饰符
对应 `Object` 类型绑定值中的 `repeat`。例如:
```html
<button v-longpress.repeat="increase">+</button>
```
### 全局配置
| 配置项 | 类型 | 默认值 | 描述 |
| -- | -- | -- | -- |
| `longpress.timeout` | `number` | `500` | 触发长按等待的毫秒数。 |
| `longpress.repeatInterval` | `number` | `100` | 重复触发回调间隔的毫秒数。 |