UNPKG

vue-giveworks-form

Version:

This plugin provides Vue.js component for the open [http://giveworks.net](Giveworks Platform).

27 lines (22 loc) 726 B
function input(el) { if(['input', 'textarea', 'select'].indexOf(el.tagName) !== -1) { return el; } return Array.from(el.querySelectorAll('input, textarea, select')).reverse().pop(); } export default { inserted(el, binding, vnode) { const field = input(el); const params = new URLSearchParams(location.search); const key = binding.value || field && field.getAttribute('name'); const value = params.get(key); if(field && !field.value && !!value) { if(vnode.componentInstance) { vnode.componentInstance.$emit('input', value); } else { vnode.elm.value = value; } } } };