Book Image

The Majesty Of Vue.js

By : Alex Kyriakidis, Kostas Maniatis
Book Image

The Majesty Of Vue.js

By: Alex Kyriakidis, Kostas Maniatis

Overview of this book

<p>Vue.js is a library to build interactive web interfaces. The aim is to provide the benefits of reactive data binding and composable view components with an API that is as simple as possible.</p> <p>This book will teach you how to efficiently implement Vue.js in your projects. It starts with the fundamentals of Vue.js to building large-scale applications. You will find out what components, filters, methods, and computed properties are and how to use them to build robust applications.</p> <p>Further on, you will become familiar with ES6, single file components, module bundlers, and workflow automation. The best way to learn to code is to write it, so there’s an exercise at the end of most of the chapters for you to solve and actually test yourself on what you have learned. You can solve these in order to gain a better understanding of Vue.js.</p> <p>By the end of this book, you will be able to create fast front-end applications and increase the performance of your existing projects with Vue.js integration.</p>
Table of Contents (23 chapters)
The Majesty of Vue.js
Credits
About the Authors
www.PacktPub.com
Preface
2
Getting Started
8
Consuming an API – Preface
12
ECMAScript 6
15
Swapping Components
18
Closing Thoughts

Deleting data


Now let us proceed to another piece of functionality our stories list should have: Deleting a story we don't like. To remove a story from the array and the DOM, we are going to use Vue's $remove() method, which searches for an item and removes it from target array.

Note

The $remove() method works as follows. When you want to remove an item from an array called items you can do: vm.items.$remove(item)

<td>
    <div class="btn-group">
        <button @click="upvoteStory(story)" class="btn btn-primary">
            Upvote
        </button>
        <button @click="deleteStory(story)" class="btn btn-danger">
            Delete
        </button>
    </div>
</td> 

We append a Delete button to the actions column, bound to a method to delete the story. The deleteStory method will be:

Vue.component('story',{
    ...
    methods: {
        ...
        deleteStory: function...