JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://unpkg.com/vue"></script>
<!-- Component -->
<template id="component">
<input v-bind:value="value" @input="$emit('input', $event.target.value)">
</template>
<!-- Parent -->
<div id="app">
<p>
Parent variable: {{ user }}
</p>
<child-component v-model="user"></child-component>
</div>
JavaScript
Vue.component('child-component', {
template: '#component',
props: ['value'],
methods: {
updateModel (event) {
this.$emit('input', event.target.value)
}
}
});
new Vue({
el: '#app',
data () {
return {
user: 'John'
}
}
})