Node.js & NPM
Windows
Ubuntu & Mac
sudo apt-get install curl
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install nodejs
Git & Github
Windows
Ubuntu & Mac
sudo apt-get install git
Visual Studio Code
Mac, Linux & Windows
Extension (Vetur)
Ctrl+P
https://marketplace.visualstudio.com/items?itemName=octref.vetur
Vue CLI
npm install -g @vue/cli
yarn global add @vue/cli
OR
v-text
v-html
v-show
v-if
v-else
v-else-if
v-for
v-on
v-bind
v-model
v-pre
v-cloak
v-once
hello-world
https://github.com/kcsuraj/vue-workshop.git
Challenge
hello-world-solution
Solution
calculator-favorite-movie
https://github.com/kcsuraj/vue-workshop.git
Challenge
calculator-favorite-movie-solution
Solution
Are bound to the Vue instance, they are incredibly useful for functions you would like to access in directives
counter
https://github.com/kcsuraj/vue-workshop.git
Challenge
counter-solution
Solution
add-comment-in-photo
https://github.com/kcsuraj/vue-workshop.git
Challenge
add-comment-in-photo-solution
Solution
vue-registration-form
https://github.com/kcsuraj/vue-workshop.git
Challenge
vue-registration-form-solution
Solution
Computed properties are calculations that will be cached and will only update when needed.
Highly performant but use with understanding.
netflix-ratings
https://github.com/kcsuraj/vue-workshop.git
Challenge
netflix-ratings-solution
Solution
Good for asynchronous updates,
and updates/transitions with data changes
hacker-news
https://github.com/kcsuraj/vue-workshop.git
Challenge
hacker-news-solution
Solution
Vue.js uses HTML-based template syntax to bind the Vue instance to the DOM, very useful for components.
Templates are optional, you can also write render functions with optional JSX support.
A collection of elements that are encapsulated into a group that can be accessed through one single element.
<nav>
<a href="">
<img src=""></img>
</a>
<ul>
<li></li>
<li></li>
</ul>
</nav>
<navbar></navbar>
hacker-news-components
https://github.com/kcsuraj/vue-workshop.git
Challenge
hacker-news-components-solution
Solution
a parent component to pass DOM elements into a child component
modal
https://github.com/kcsuraj/vue-workshop.git
Challenge
modal-solution
Solution
form-component
https://github.com/kcsuraj/vue-workshop.git
Challenge
form-component-solution
Solution
integrates with Vue.js core to make building Single Page Applications with Vue.js a breeze
npm install --save vue-router
//Router.vue
import Vue from "vue";
import Router from "vue-router";
import HelloWorld from "../components/HelloWorld";
Vue.use(Router);
export default new Router({
routes: [
{
path: "/",
name: "HelloWorld",
component: HelloWorld
}
]
});
//App.vue
<template>
<div id="app">
<img alt="Vue logo" src="./assets/logo.png" />
<router-view />
</div>
</template>
//main.js
import Vue from "vue";
import App from "./App.vue";
import router from "./router";
Vue.config.productionTip = false;
new Vue({
render: h => h(App),
router,
components: { App }
}).$mount("#app");