Book Image

Vue.js 2 and Bootstrap 4 Web Development

Book Image

Vue.js 2 and Bootstrap 4 Web Development

Overview of this book

In this book, we will build a full stack web application right from scratch up to its deployment. We will start by building a small introduction application and then proceed to the creation of a fully functional, dynamic responsive web application called ProFitOro. In this application, we will build a Pomodoro timer combined with office workouts. Besides the Pomodoro timer and ProFitOro workouts will enable authentication and collaborative content management. We will explore topics such as Vue reactive data binding, reusable components, routing, and Vuex store along with its state, actions, mutations, and getters. We will create Vue applications using both webpack and Nuxt.js templates while exploring cool hot Nuxt.js features such as code splitting and server-side rendering. We will use Jest to test this application, and we will even revive some trigonometry from our secondary school! While developing the app, you will go through the new grid system of Bootstrap 4 along with Vue.js’ directives. We will connect Vuex store to the Firebase real-time database, data storage, and authentication APIs and use this data later inside the application’s reactive components. Finally, we will quickly deploy our application using the Firebase hosting mechanism.
Table of Contents (19 chapters)
Vue.js 2 and Bootstrap 4 Web Development
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Index

Connecting the Vuex store to the Firebase database


So, now we have to connect our Vuex store to the Firebase database. We could use the native Firebase API for binding the state data to the database data, but why would we deal with promises and stuff if someone already did that for us? This someone is called Eduardo and he has created Vuexfire – Firebase bindings for Vuex (https://github.com/posva/vuexfire). If you were at the vueconf2017 conference in Wroclaw, you probably remember this guy:

Eduardo talking about Vue and Firebase during the Vue conference

Vuexfire comes with Firebase mutations and actions that will do all the behind the scenes jobs for you, while you just export them within your mutations and actions objects. So, to start with, install both firebase and vuexfire:

npm install vue firebase vuexfire –save

Import firebase and firebaseMutations in your store's index.js entry point:

//store/index.js
import firebase from 'firebase'
import { firebaseMutations } from 'vuexfire'

Now...