Introduction to Vue.js Forms
Vue.js makes it easy to create interactive forms that capture user input. In this guide, we'll explore how to work with Vue.js to build forms, handle user input, and update data based on user interactions.
Binding Input Fields
Vue.js provides the `v-model` directive to create two-way data binding between input fields and your data properties. Here's an example of using `v-model` to capture user input in a text input field:
<div id="app">
<input v-model="userInput" placeholder="Type something...">
<p>You typed: {{ userInput }}</p>
</div>
<script>
new Vue({
el: '#app',
data: {
userInput: ''
}
});
</script>
In this example, the `v-model` directive binds the value of the input field to the `userInput` data property. Any changes in the input field are reflected in the paragraph below.
Handling Form Submission
You can use Vue.js to handle form submission and send user input to a server or perform other actions. Here's an example of handling a form submission:
<div id="app">
<form v-on:submit="submitForm">
<input v-model="userInput" placeholder="Type something...">
<button type="submit">Submit</button>
</form>
<p>You submitted: {{ userInput }}</p>
</div>
<script>
new Vue({
el: '#app',
data: {
userInput: ''
},
methods: {
submitForm: function(event) {
event.preventDefault();
alert('Form submitted with: ' + this.userInput);
}
}
});
</script>
In this example, the `v-on:submit` directive listens for the form submission, and the `submitForm` method handles the submission. The input value is displayed in a paragraph, and an alert is shown upon submission.
Conclusion
Vue.js simplifies the process of working with forms and capturing user input. The `v-model` directive and event handling make it easy to create dynamic and interactive forms in your web applications, enhancing the user experience.