diff --git a/finance tracker b/finance tracker new file mode 100644 index 00000000000..238180d1c04 --- /dev/null +++ b/finance tracker @@ -0,0 +1,126 @@ +vue create personal-finance-tracker +cd personal-finance-tracker +npm install vue-router vuex chart.js vue-chartjs + +import Vue from 'vue'; +import Router from 'vue-router'; +import Home from '../views/Home.vue'; +import Login from '../views/Login.vue'; +import Register from '../views/Register.vue'; + +Vue.use(Router); + +const routes = [ + { path: '/', component: Home }, + { path: '/login', component: Login }, + { path: '/register', component: Register }, +]; + +const router = new Router({ + mode: 'history', + routes, +}); + +export default router; + +import Vue from 'vue'; +import Vuex from 'vuex'; + +Vue.use(Vuex); + +export default new Vuex.Store({ + state: { + transactions: [], + }, + mutations: { + ADD_TRANSACTION(state, transaction) { + state.transactions.push(transaction); + }, + DELETE_TRANSACTION(state, transactionId) { + state.transactions = state.transactions.filter(t => t.id !== transactionId); + }, + }, + actions: { + addTransaction({ commit }, transaction) { + commit('ADD_TRANSACTION', transaction); + }, + deleteTransaction({ commit }, transactionId) { + commit('DELETE_TRANSACTION', transactionId); + }, + }, + getters: { + allTransactions: state => state.transactions, + }, +}); + + + + + + + + + + + + +