Merge pull request #1044 from jitendra-webkul/jitendra
Added v-debounce directive
This commit is contained in:
commit
308c48aeae
File diff suppressed because one or more lines are too long
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"/js/ui.js": "/js/ui.js?id=97343143e38eeba34064",
|
||||
"/js/ui.js": "/js/ui.js?id=f4ffa4c6ada363152cf9",
|
||||
"/css/ui.css": "/css/ui.css?id=c846938a649c221ac297"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
|
||||
Vue.component("flash-wrapper", require("./components/flash-wrapper"));
|
||||
Vue.component("flash", require("./components/flash"));
|
||||
Vue.component("tabs", require("./components/tabs/tabs"));
|
||||
|
|
@ -18,6 +17,7 @@ Vue.directive("alert", require("./directives/alert"));
|
|||
Vue.component("datetime", require("./components/datetime"));
|
||||
Vue.component("date", require("./components/date"));
|
||||
Vue.component("swatch-picker", require("./components/swatch-picker"));
|
||||
Vue.directive("debounce", require("./directives/debounce"));
|
||||
|
||||
require('flatpickr/dist/flatpickr.css');
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,12 @@
|
|||
module.exports = function debounce (fn, delay) {
|
||||
var timeoutID = null
|
||||
|
||||
return function () {
|
||||
clearTimeout(timeoutID)
|
||||
var args = arguments
|
||||
var that = this
|
||||
timeoutID = setTimeout(function () {
|
||||
fn.apply(that, args)
|
||||
}, delay)
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
<script>
|
||||
const debounce = require('../debounce')
|
||||
|
||||
export default {
|
||||
bind(el, binding, vnode) {
|
||||
if (binding.value !== binding.oldValue) {
|
||||
el.oninput = debounce(function (evt) {
|
||||
el.dispatchEvent(new Event('change'))
|
||||
}, parseInt(binding.value) || 500)
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Loading…
Reference in New Issue