Hammer.js wrapper for Vue.js
JavaScript HTML
Latest commit a1c2eae Sep 29, 2016 @yyx990803 yyx990803 committed on GitHub Update README.md
Permalink
Failed to load latest commit information.
example test $event May 3, 2016
.gitignore update for 1.0 Feb 1, 2016
LICENSE Add License (#39) Jun 6, 2016
README.md Update README.md Sep 29, 2016
bower.json update for 1.0 Feb 1, 2016
package.json 1.1.0 May 3, 2016
vue-touch.js fix handler teardown May 3, 2016
vue-touch.min.js add minified build May 3, 2016

README.md

vue-touch

Touch events plugin for Vue.js. This plugin does not support Vue 2.0 yet.

This is a directive wrapper for Hammer.js 2.0.

Install

CommonJS

  • Available through npm as vue-touch.

    var VueTouch = require('vue-touch')
    Vue.use(VueTouch)

Direct include

  • You can also directly include it with a <script> tag when you have Vue and Hammer.js already included globally. It will automatically install itself, and will add a global VueTouch.

Usage

Using the v-touch directive

<a v-touch:tap="onTap">Tap me!</a>

<div v-touch:swipeleft="onSwipeLeft">Swipe me!</div>

Configuring Recognizer Options

There are two ways to customize recognizer options such as direction and threshold. The first one is setting global options:

// change the threshold for all swipe recognizers
VueTouch.config.swipe = {
  threshold: 200
}

Or, you can use the v-touch-options directive to configure the behavior on a specific element:

<!-- detect only horizontal pans with a threshold of 100 -->
<a
  v-touch:pan="onPan"
  v-touch-options:pan="{ direction: 'horizontal', threshold: 100 }">
</a>

Registering Custom Events

// example registering a custom doubletap event.
// the `type` indicates the base recognizer to use from Hammer
// all other options are Hammer recognizer options.
VueTouch.registerCustomEvent('doubletap', {
  type: 'tap',
  taps: 2
})
<a v-touch:doubletap="onDoubleTap"></a>

See Hammer.js documentation for all available events.

See /example for a multi-event demo. To build it, run npm install && npm run build.

License

MIT