SlideShare a Scribd company logo
LEVEL-UP APPS & WEBSITES
WITH VUE.JS
Level-up
apps & websites
with vue.js
twitter:
@loregirardi
github:
@liqueflies
hey folks
i am
lorenzo girardi
twitter:
@loregirardi
github:
@liqueflies
hello commit
i am a
front-end dev
and a passionate
musician
twitter:
@loregirardi
github:
@liqueflies
digital company with strong focus on
strategy and technology
website:
https://www.develondigital.com/
international group
+15 years
+55 people
+5 departments
website:
https://www.develondigital.com/
thanks for having us!
is it easy
to build websites?
twitter:
@loregirardi
github:
@liqueflies
Level up  apps and websites with vue.js
Level up  apps and websites with vue.js
Our team was searching for a tool
with data driven development in mind...
...and a lean learning curve because
we had to be production-ready ASAP.
twitter:
@loregirardi
github:
@liqueflies
+ =
website:
https://vuejs.org/
/vjuː/
website:
https://vuejs.org/
Level up  apps and websites with vue.js
website:
https://vuejs.org/
progressive
framework
evan you
vue vue-router vuex vue-cli
website:
https://vuejs.org/
numbers
> 82k stars (87k react, 32k angular)
~ 4000 packages depends on it
> 1.000.000 download last month
$ 11.567 per month by 204 patreons
2 vueconf in 2018 (amsterdam, new orleans)
basic
concepts
website:
https://vuejs.org/
website:
https://vuejs.org/
website:
https://vuejs.org/
Level up  apps and websites with vue.js
<script src="vue.js"></script>
<div id="app">
<p>{{ message }}</p>
</div>
<script>
new Vue({
el: '#app',
data: {
message: 'Hello commit people!'
}
})
</script>
https://vuejs.org/ hello world
<script src="vue.js"></script>
<div id="app">
<p>{{ message }}</p>
</div>
<script>
new Vue({
el: '#app',
data: {
message: 'Hello commit people!'
}
})
</script>
https://vuejs.org/ hello world
<script src="vue.js"></script>
<div id="app">
<p>{{ message }}</p>
</div>
<script>
new Vue({
el: '#app',
data: {
message: 'Hello commit people!'
}
})
</script>
https://vuejs.org/ hello world
Level up  apps and websites with vue.js
<script src="vue.js"></script>
<div id="app">
<img v-bind:src="src" :alt="alt" />
</div>
<script>
new Vue({
el: '#app',
data: {
src: 'https://picsum.photos/200/300',
alt: 'A random pic from the web.'
}
})
</script>
https://vuejs.org/v2/guide/syntax.html attributes binding
<script src="vue.js"></script>
<div id="app">
<img v-bind:src="src" :alt="alt" />
</div>
<script>
new Vue({
el: '#app',
data: {
src: 'https://picsum.photos/200/300',
alt: 'A random pic from the web.'
}
})
</script>
https://vuejs.org/v2/guide/syntax.html attributes binding
<script src="vue.js"></script>
<div id="app">
<img v-bind:src="src" :alt="alt" />
</div>
<script>
new Vue({
el: '#app',
data: {
src: 'https://picsum.photos/200/300',
alt: 'A random pic from the web.'
}
})
</script>
https://vuejs.org/v2/guide/syntax.html attributes binding
Level up  apps and websites with vue.js
<script src="vue.js"></script>
<div id="app">
<p v-if="visible"> I’m not rendered </p>
<p v-show="visible"> I’m hidden [i.e. display: none] </p>
</div>
<script>
new Vue({
el: '#app',
data: {
visible: false
}
})
</script>
https://vuejs.org/v2/guide/syntax.html conditional render/display
<script src="vue.js"></script>
<div id="app">
<p v-if="visible"> I’m not rendered </p>
<p v-show="visible"> I’m hidden [i.e. display: none] </p>
</div>
<script>
new Vue({
el: '#app',
data: {
visible: false
}
})
</script>
https://vuejs.org/v2/guide/syntax.html conditional render/display
<script src="vue.js"></script>
<ul id="app">
<li v-for="todo in todos" :key="todo">
{{ todo }}
</li>
</ul>
<script>
new Vue({
el: '#app',
data: {
todos: ['eat', 'sleep', 'repeat']
}
})
</script>
https://vuejs.org/v2/guide/syntax.html loop through elements
<script src="vue.js"></script>
<ul id="app">
<li v-for="todo in todos" :key="todo">
{{ todo }}
</li>
</ul>
<script>
new Vue({
el: '#app',
data: {
todos: ['eat', 'sleep', 'repeat']
}
})
</script>
https://vuejs.org/v2/guide/syntax.html loop through elements
Level up  apps and websites with vue.js
<script src="vue.js"></script>
<div id="app">
<p> {{ message }} </p>
<button @click="message = ''"> Reset </button>
</div>
<script>
new Vue({
el: '#app',
data: {
message: 'Please, reset me!'
}
})
</script>
https://vuejs.org/v2/guide/syntax.html handle user input
<script src="vue.js"></script>
<div id="app">
<p> {{ message }} </p>
<button @click="message = ''"> Reset </button>
</div>
<script>
new Vue({
el: '#app',
data: {
message: 'Please, reset me!'
}
})
</script>
https://vuejs.org/v2/guide/syntax.html handle user input
<script src="vue.js"></script>
<div id="app">
<p> you typed: {{ message }} </p>
<input v-model="message" placeholder="start typing..." />
</div>
<script>
new Vue({
el: '#app',
data: {
message: ''
}
})
</script>
https://vuejs.org/v2/guide/syntax.html handle user input
<script src="vue.js"></script>
<div id="app">
<p> you typed: {{ message }} </p>
<input v-model="message" placeholder="start typing..." />
</div>
<script>
new Vue({
el: '#app',
data: {
message: ''
}
})
</script>
https://vuejs.org/v2/guide/syntax.html handle user input
Level up  apps and websites with vue.js
syntax
Focusing
- semantic code
- easy to read
- easy to maintain
- easy to share code
in teams.
setting data
Focusing
set data in vue.js is not async.
is the same as you do in javascript.
this.setState({ counter: this.state.counter++ })
this.setState({ counter: this.state.counter++ })
have you ever tried?
Level up  apps and websites with vue.js
computed
and methods
website:
https://vuejs.org/
<ul id="app">
<p> The higher number is: {{ higherNumber }} </p>
</ul>
new Vue({
el: '#app',
data: {
numbers: [100, 2, 345, 42, 56]
},
computed: {
higherNumber: function () {
return Math.max(...this.numbers)
}
}
})
https://vuejs.org/v2/guide/syntax.html computed
<ul id="app">
<p> The higher number is: {{ higherNumber }} </p>
</ul>
new Vue({
el: '#app',
data: {
numbers: [100, 2, 345, 42, 56]
},
computed: {
higherNumber: function () {
return Math.max(...this.numbers)
}
}
})
https://vuejs.org/v2/guide/syntax.html computed
<ul id="app">
<p> The higher number is: {{ higherNumber }} </p>
</ul>
new Vue({
el: '#app',
data: {
numbers: [100, 2, 345, 42, 56]
},
computed: {
higherNumber: function () {
return Math.max(...this.numbers)
}
}
})
https://vuejs.org/v2/guide/syntax.html computed
<div id="app">
<p v-show="visible"> I am visible. </p>
<button @click="toggleVisibility"> toggle visibility </button>
</div>
new Vue({
el: '#app',
data: {
visible: false
},
methods: {
toggleVisibility: function (event) {
this.visible = !this.visible
}
}
})
https://vuejs.org/v2/guide/syntax.html methods
<div id="app">
<p v-show="visible"> I am visible. </p>
<button @click="toggleVisibility"> toggle visibility </button>
</div>
new Vue({
el: '#app',
data: {
visible: false
},
methods: {
toggleVisibility: function (event) {
this.visible = !this.visible
}
}
})
https://vuejs.org/v2/guide/syntax.html methods
computed
Focusing
- runs when its
own dependencies
updates
- called and used
as data properties
- is cached
methods
Focusing
- runs when
you need to use it
- called as a
function in event
bindings
- is not cached
summary
Focusing
- no this hell (context is auto-binded)
- no async data beginner failures
- no shouldUpdate worries
- no build steps needed
Level up  apps and websites with vue.js
content
management with
components
website:
https://vuejs.org/v2/components.html
Level up  apps and websites with vue.js
<the-header />
<aside>
<main-menu />
</aside>
<main>
<blog-posts />
</main>
<the-footer />
https://vuejs.org/v2/components.htm
l
components
tree structure
component
Focusing
- encapsulation of elements
that can be accessed
through one single element.
- encapsulation of logic,
but in different instances
- encapsulation of style (module, scoped)
// ...in root component
<div id="app">
<card-item />
</div>
Vue.component('card-item', {
template: '...',
data: function () {
return {
...
}
}
})
https://vuejs.org/v2/components.html
// ...in root component
<div id="app">
<card-item />
</div>
<script>
Vue.component('card-item', {
template: '...',
data: function () {
return { ... }
}
})
</script>
https://vuejs.org/v2/components.html
<script type="text/x-template" id="card-template">
<article>
<h2> {{ title }} </h2>
<img :src="img" :alt="title" />
</article>
</script>
Vue.component('card-item', {
template: '#card-template',
data: function () {
return {
title: 'A card title'
img: 'https://picsum.photos/200/300'
}
}
})
https://vuejs.org/v2/components.html
<script type="text/x-template" id="card-template">
<article>
<h2> {{ title }} </h2>
<img :src="img" :alt="title" />
</article>
</script>
Vue.component('card-item', {
template: '#card-template',
data: function () {
return {
title: 'A card title'
img: 'https://picsum.photos/200/300'
}
}
})
https://vuejs.org/v2/components.html
Level up  apps and websites with vue.js
{
...
data () {
return {
title: 'A card title'
img: 'https://picsum.photos/200/300'
}
}
...
}
https://vuejs.org/v2/components.html
data is a function
Level up  apps and websites with vue.js
now we can encapsulate logic
and style in a component.
by for now, we are using it
statically.
twitter:
@loregirardi
github:
@liqueflies
Vue.component('card-item', {
template: '#card-template',
props: ['title', 'img']
})
// ...in root component
<div id="app">
<card-item
title="Title from parent"
src="https://picsum.photos/200/300" />
</div>
https://vuejs.org/v2/components.html
… better use props
Vue.component('card-item', {
template: '#card-template',
props: ['title', 'img']
})
// ...in root component
<div id="app">
<card-item
title="Title from parent"
src="https://picsum.photos/200/300" />
</div>
https://vuejs.org/v2/components.html
… better use props
<div id="app">
<card-item
propA="..."
propB="..."
propC="..."
propD="..."
...
/>
</div>
https://vuejs.org/v2/components.html
this could be sick
Vue.component('card-item', {
inheritAttrs: false, // important to avoid unwanted markup
template: '#card-template',
props: ['title', 'img']
})
<div id="app">
<card-item v-bind="card" />
</div>
new Vue({
el: '#app',
data: {
card: { title: 'Card title', img: 'https://picsum.photos/200/300' }
}
})
https://vuejs.org/v2/components.html
v-bind to the rescue
Vue.component('card-item', {
inheritAttrs: false, // important to avoid unwanted markup
template: '#card-template',
props: ['title', 'img']
})
<div id="app">
<card-item v-bind="card" />
</div>
new Vue({
el: '#app',
data: {
card: { title: 'Card title', img: 'https://picsum.photos/200/300' }
}
})
https://vuejs.org/v2/components.html
v-bind to the rescue
lifecycle
Focusing
each vue instance goes through
a series of initialization steps
when it’s created running functions
called lifecycle hooks,
giving users the opportunity to
add their own code at specific stages.
Vue.component('card-item', {
template: '...',
data: function () {
return {
image: '...'
}
},
mounted: function () {
var image = this.image
this.image = '...my-spinner-image.png'
new imagesLoaded(this.$el, { this.image = image })
}
})
https://vuejs.org/v2/components.html
Vue.component('card-item', {
template: '...',
data: function () {
return {
image: '...'
}
},
mounted: function () {
var image = this.image
this.image = '...my-spinner-image.png'
new imagesLoaded(this.$el, { this.image = image })
}
})
https://vuejs.org/v2/components.html
Vue.component('card-item', {
template: '...',
data: function () {
return {
image: '...'
}
},
mounted: function () {
var image = this.image
this.image = '...my-spinner-image.png'
new imagesLoaded(this.$el, { this.image = image })
}
})
https://vuejs.org/v2/components.html
<div id="app">
<component :is="componentName" />
</div>
new Vue({
el: '#app',
data: {
componentName: '...'
}
})
https://vuejs.org/v2/components.html
the :is attribute
<template lang="pug">
// ...
</template>
<script>
// export default {}
</script>
<style lang="sass|scss|stylus" module|scoped>
// ...
</style>
https://vuejs.org/v2/components.html
single file
components
Level up  apps and websites with vue.js
update
data with events
website:
https://vuejs.org/v2/style-guide/
by passing props we can mutate
child data from parent.
how can we mutate
parent data from its children?
twitter:
@loregirardi
github:
@liqueflies
<script type="text/x-template" id="slider-pag-template">
<div>
<button @click="$emit('next-slide')"> Next slide </button>
<button @click="$emit('prev-slide')"> Prev slide </button>
</div>
</script>
Vue.component('slider-pag', {
template: '#slider-pag-template'
})
<div id="app">
<slider-pag
@next-slide="slide++" @prev-slide="slide--" />
</div>
https://vuejs.org/v2/guide/components.html#Using-v-on-with-Custom-Events
<script type="text/x-template" id="slider-pag-template">
<div>
<button @click="$emit('next-slide')"> Next slide </button>
<button @click="$emit('prev-slide')"> Prev slide </button>
</div>
</script>
Vue.component('slider-pag', {
template: '#slider-pag-template'
})
<div id="app">
<slider-pag
@next-slide="slide++" @prev-slide="slide--" />
</div>
https://vuejs.org/v2/guide/components.html#Using-v-on-with-Custom-Events
and what if we want
to change data...
...wherever in the
component tree?
twitter:
@loregirardi
github:
@liqueflies
// broadcast event
var bus = new Vue()
// send event
bus.$emit('event-name', ...arguments)
// receive event
bus.$on('event-name', ...arguments)
// unbind event
bus.$off('event-name')
event bus
https://vuejs.org/v2/components.html#Content-Distribution-with-Slots
// send event
new Vue({
...
methods: {
myMethod: function () {
bus.$emit('event-name', ...arguments)
}
}
})
event bus
https://vuejs.org/v2/components.html#Content-Distribution-with-Slots
// receive event
new Vue({
...
created: function () {
bus.$on('event-name', myMethod)
},
methods: {
myMethod: function () { ... }
}
})
event bus
https://vuejs.org/v2/components.html#Content-Distribution-with-Slots
Level up  apps and websites with vue.js
native
transitions
website:
https://vuejs.org/v2/guide/transitions.html
transitions
Focusing
transition component allows
to add enter/leave effects to:
- conditions (v-if / v-show)
- dynamic components
- component root node
- switching :key attribute
website:
https://vuejs.org/v2/guide/transitions.html
website:
https://vuejs.org/v2/guide/transitions.html
<div id="app">
<transition name="fade">
<p v-show="visible"> I am visible. </p>
</transition>
<button @click="visible = !visible"> toggle </button>
</div>
<style>
.fade-enter-active, .fade-leave-active {
transition: opacity .5s;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}
</style>
https://vuejs.org/v2/guide/syntax.html
<div id="app">
<transition name="fade">
<p v-show="visible"> I am visible. </p>
</transition>
<button @click="visible = !visible"> toggle </button>
</div>
<style>
.fade-enter-active, .fade-leave-active {
transition: opacity .5s;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}
</style>
https://vuejs.org/v2/guide/syntax.html
Level up  apps and websites with vue.js
<div id="app">
<transition name="fade">
<p v-show="visible"> I am visible. </p>
</transition>
<button @click="visible = !visible"> toggle </button>
</div>
<style>
.fade-enter-active {
transition: opacity .2s ease;
}
.fade-leave-active {
transition: opacity .3;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}
</style>
https://vuejs.org/v2/guide/syntax.html
<div id="app">
<transition name="fade">
<p v-show="visible"> I am visible. </p>
</transition>
<button @click="visible = !visible"> toggle </button>
</div>
<style>
.fade-enter-active {
transition: opacity .2s ease;
}
.fade-leave-active {
transition: opacity .3;
}
.fade-enter, .fade-leave-to {
opacity: 0;
}
</style>
https://vuejs.org/v2/guide/syntax.html
Level up  apps and websites with vue.js
<div id="app">
<transition name="fade" mode="out-in|in-out">
<component :is="pageName" />
</transition>
</div>
<script>
new Vue({
el: '#app',
props: ['pageName']
})
</script>
https://vuejs.org/v2/guide/syntax.html
<div id="app">
<transition name="fade" mode="out-in|in-out">
<component :is="pageName" />
</transition>
</div>
<script>
new Vue({
el: '#app',
props: ['pageName']
})
</script>
https://vuejs.org/v2/guide/syntax.html
https://jsfiddle.net/loregirardi/52mn0sqL/
a fiddle
<div id="app">
<transition @enter="enterAnimation">
<component :is="pageName" />
</transition>
</div>
<script>
new Vue({
el: '#app',
props: ['pageName'],
methods: {
enterAnimation (el, done) { /* your code */ }
}
})
</script>
https://vuejs.org/v2/guide/syntax.html
<div id="app">
<transition @enter="enterAnimation">
<component :is="pageName" />
</transition>
</div>
<script>
new Vue({
el: '#app',
props: ['pageName'],
methods: {
enterAnimation (el, done) { /* your code */ }
}
})
</script>
https://vuejs.org/v2/guide/syntax.html
Level up  apps and websites with vue.js
async call
best practices
website:
https://vuejs.org/
in real use cases
we have to display
data from server.
what’s the better way
to achieve that?
twitter:
@loregirardi
github:
@liqueflies
Level up  apps and websites with vue.js
<script src="vue.js"></script>
<ul id="star-wars">
<li v-for="person in people" :key="person.name">
{{ person.name }}
</li>
</ul>
<script>
new Vue({
el: '#star-wars',
data: {
people: []
},
created: function () {
fetch('https://swapi.co/api/people').then(function (response) {
this.people = response.results
})
}
})
</script>
<script src="vue.js"></script>
<ul id="star-wars">
<li v-for="person in people" :key="person.name">
{{ person.name }}
</li>
</ul>
<script>
new Vue({
el: '#star-wars',
data: {
people: []
},
created: function () {
fetch('https://swapi.co/api/people').then(function (response) {
this.people = response.results
})
}
})
</script>
in fast connections
we will immediately see
results.
how can we add a loader
for slow connections?
twitter:
@loregirardi
github:
@liqueflies
https://jsfiddle.net/loregirardi/5x6392wr/
a fiddle
five
reasons why
website:
https://vuejs.org/
no build steps
required
Easy to start up, also in old legacy
projects.
website:
https://vuejs.org/
effortless
api
update and modify data is easy.
context is auto-binded and rendering
updates are out of the box.
website:
https://vuejs.org/
add modularly
what you need
if your app / website needs to scale
just add modules from vue.js ecosystem
to fit your needs.
website:
https://vuejs.org/
no es6 knowledge
needed
i am not telling you to not learn es6.
but if you want you can still use
old es2015 syntax so
beginner / not-frontend dev
can easily get into it.
website:
https://vuejs.org/
super fast on
mobile devices
is easy achieve fast rendering on desktop,
vue.js get the best experience on mobile
devices.
website:
https://vuejs.org/
Level up  apps and websites with vue.js
useful resources
- curated list: https://github.com/vuejs/awesome-vue
- official forum: https://forum.vuejs.org/
- vuex: https://github.com/vuejs/vuex
- vue-router: https://router.vuejs.org/en/
- vue-cli: https://github.com/vuejs/vue-cli
- server-side rendering: https://vuejs.org/v2/guide/ssr.html
website:
https://vuejs.org/
vue people
- evan you: https://twitter.com/youyuxi
- kazupon: https://twitter.com/kazu_pon
- linusborg: https://twitter.com/Linus_Borg
- akryum: https://twitter.com/Akryum
- katashin: https://twitter.com/ktsn
- sarah drasner: https://twitter.com/sarah_edo
website:
https://vuejs.org/team.html
vue community is
growing quickly but is recent.
let’s share knowledge,
code and passion.
twitter:
@loregirardi
github:
@liqueflies
thank you

More Related Content

What's hot (20)

Javascript MVVM with Vue.JS
Javascript MVVM with Vue.JSJavascript MVVM with Vue.JS
Javascript MVVM with Vue.JS
Eueung Mulyana
 
Chrome enchanted 2015
Chrome enchanted 2015Chrome enchanted 2015
Chrome enchanted 2015
Chang W. Doh
 
Vue.js for beginners
Vue.js for beginnersVue.js for beginners
Vue.js for beginners
Julio Bitencourt
 
VueJS Introduction
VueJS IntroductionVueJS Introduction
VueJS Introduction
David Ličen
 
Room with a Vue - Introduction to Vue.js
Room with a Vue - Introduction to Vue.jsRoom with a Vue - Introduction to Vue.js
Room with a Vue - Introduction to Vue.js
Zachary Klein
 
An introduction to Vue.js
An introduction to Vue.jsAn introduction to Vue.js
An introduction to Vue.js
Javier Lafora Rey
 
Vue business first
Vue business firstVue business first
Vue business first
Vitalii Ratyshnyi
 
How to Build SPA with Vue Router 2.0
How to Build SPA with Vue Router 2.0How to Build SPA with Vue Router 2.0
How to Build SPA with Vue Router 2.0
Takuya Tejima
 
Love at first Vue
Love at first VueLove at first Vue
Love at first Vue
Dalibor Gogic
 
Vue.js Getting Started
Vue.js Getting StartedVue.js Getting Started
Vue.js Getting Started
Murat Doğan
 
Meteor Day Talk
Meteor Day TalkMeteor Day Talk
Meteor Day Talk
Brandon Bechtel
 
Drupal point of vue
Drupal point of vueDrupal point of vue
Drupal point of vue
David Ličen
 
Google app engine by example
Google app engine by exampleGoogle app engine by example
Google app engine by example
Alexander Zamkovyi
 
Vuejs for Angular developers
Vuejs for Angular developersVuejs for Angular developers
Vuejs for Angular developers
Mikhail Kuznetcov
 
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...
Luciano Mammino
 
Desenvolvimento web com Ruby on Rails (parte 6)
Desenvolvimento web com Ruby on Rails (parte 6)Desenvolvimento web com Ruby on Rails (parte 6)
Desenvolvimento web com Ruby on Rails (parte 6)
Joao Lucas Santana
 
Open social 2.0 sandbox ee and breaking out of the gadget box
Open social 2.0 sandbox  ee and breaking out of the gadget boxOpen social 2.0 sandbox  ee and breaking out of the gadget box
Open social 2.0 sandbox ee and breaking out of the gadget box
Ryan Baxter
 
jQuery Internals + Cool Stuff
jQuery Internals + Cool StuffjQuery Internals + Cool Stuff
jQuery Internals + Cool Stuff
jeresig
 
Introduction to modern front-end with Vue.js
Introduction to modern front-end with Vue.jsIntroduction to modern front-end with Vue.js
Introduction to modern front-end with Vue.js
monterail
 
The Art of AngularJS in 2015
The Art of AngularJS in 2015The Art of AngularJS in 2015
The Art of AngularJS in 2015
Matt Raible
 
Javascript MVVM with Vue.JS
Javascript MVVM with Vue.JSJavascript MVVM with Vue.JS
Javascript MVVM with Vue.JS
Eueung Mulyana
 
Chrome enchanted 2015
Chrome enchanted 2015Chrome enchanted 2015
Chrome enchanted 2015
Chang W. Doh
 
VueJS Introduction
VueJS IntroductionVueJS Introduction
VueJS Introduction
David Ličen
 
Room with a Vue - Introduction to Vue.js
Room with a Vue - Introduction to Vue.jsRoom with a Vue - Introduction to Vue.js
Room with a Vue - Introduction to Vue.js
Zachary Klein
 
How to Build SPA with Vue Router 2.0
How to Build SPA with Vue Router 2.0How to Build SPA with Vue Router 2.0
How to Build SPA with Vue Router 2.0
Takuya Tejima
 
Vue.js Getting Started
Vue.js Getting StartedVue.js Getting Started
Vue.js Getting Started
Murat Doğan
 
Drupal point of vue
Drupal point of vueDrupal point of vue
Drupal point of vue
David Ličen
 
Vuejs for Angular developers
Vuejs for Angular developersVuejs for Angular developers
Vuejs for Angular developers
Mikhail Kuznetcov
 
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...
Luciano Mammino
 
Desenvolvimento web com Ruby on Rails (parte 6)
Desenvolvimento web com Ruby on Rails (parte 6)Desenvolvimento web com Ruby on Rails (parte 6)
Desenvolvimento web com Ruby on Rails (parte 6)
Joao Lucas Santana
 
Open social 2.0 sandbox ee and breaking out of the gadget box
Open social 2.0 sandbox  ee and breaking out of the gadget boxOpen social 2.0 sandbox  ee and breaking out of the gadget box
Open social 2.0 sandbox ee and breaking out of the gadget box
Ryan Baxter
 
jQuery Internals + Cool Stuff
jQuery Internals + Cool StuffjQuery Internals + Cool Stuff
jQuery Internals + Cool Stuff
jeresig
 
Introduction to modern front-end with Vue.js
Introduction to modern front-end with Vue.jsIntroduction to modern front-end with Vue.js
Introduction to modern front-end with Vue.js
monterail
 
The Art of AngularJS in 2015
The Art of AngularJS in 2015The Art of AngularJS in 2015
The Art of AngularJS in 2015
Matt Raible
 

Similar to Level up apps and websites with vue.js (20)

How to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScriptHow to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScript
Katy Slemon
 
WordCamp Montreal 2016 WP-API + React with server rendering
WordCamp Montreal 2016  WP-API + React with server renderingWordCamp Montreal 2016  WP-API + React with server rendering
WordCamp Montreal 2016 WP-API + React with server rendering
Ziad Saab
 
Service workers
Service workersService workers
Service workers
Pavel Zhytko
 
Single Page Web Applications with WordPress REST API
Single Page Web Applications with WordPress REST APISingle Page Web Applications with WordPress REST API
Single Page Web Applications with WordPress REST API
Tejaswini Deshpande
 
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
Gavin Pickin
 
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
Ortus Solutions, Corp
 
Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017
Matt Raible
 
Vue.js - zastosowanie i budowa komponentów
Vue.js - zastosowanie i budowa komponentówVue.js - zastosowanie i budowa komponentów
Vue.js - zastosowanie i budowa komponentów
Laravel Poland MeetUp
 
How to Webpack your Django!
How to Webpack your Django!How to Webpack your Django!
How to Webpack your Django!
David Gibbons
 
20130528 solution linux_frousseau_nopain_webdev
20130528 solution linux_frousseau_nopain_webdev20130528 solution linux_frousseau_nopain_webdev
20130528 solution linux_frousseau_nopain_webdev
Frank Rousseau
 
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJSAngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
murtazahaveliwala
 
Django crush course
Django crush course Django crush course
Django crush course
Mohammed El Rafie Tarabay
 
Vue micro frontend implementation patterns
Vue micro frontend implementation patternsVue micro frontend implementation patterns
Vue micro frontend implementation patterns
Albert Brand
 
Vue.js part1
Vue.js part1Vue.js part1
Vue.js part1
욱래 김
 
Building and deploying React applications
Building and deploying React applicationsBuilding and deploying React applications
Building and deploying React applications
Astrails
 
Nuxtjs cheat-sheet
Nuxtjs cheat-sheetNuxtjs cheat-sheet
Nuxtjs cheat-sheet
ValeriaCastillo71
 
Introduction to Vue.js
Introduction to Vue.jsIntroduction to Vue.js
Introduction to Vue.js
Meir Rotstein
 
Frontend microservices: architectures and solutions
Frontend microservices: architectures and solutionsFrontend microservices: architectures and solutions
Frontend microservices: architectures and solutions
Mikhail Kuznetcov
 
Drupal 8 what to wait from
Drupal 8   what to wait fromDrupal 8   what to wait from
Drupal 8 what to wait from
Andrii Podanenko
 
Banquet 42
Banquet 42Banquet 42
Banquet 42
Koubei UED
 
How to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScriptHow to Build ToDo App with Vue 3 + TypeScript
How to Build ToDo App with Vue 3 + TypeScript
Katy Slemon
 
WordCamp Montreal 2016 WP-API + React with server rendering
WordCamp Montreal 2016  WP-API + React with server renderingWordCamp Montreal 2016  WP-API + React with server rendering
WordCamp Montreal 2016 WP-API + React with server rendering
Ziad Saab
 
Single Page Web Applications with WordPress REST API
Single Page Web Applications with WordPress REST APISingle Page Web Applications with WordPress REST API
Single Page Web Applications with WordPress REST API
Tejaswini Deshpande
 
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 VueJS cod...
Gavin Pickin
 
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
ITB2019 ColdBox APIs + VueJS - powering Mobile, Desktop and Web Apps with 1 V...
Ortus Solutions, Corp
 
Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017Front End Development for Back End Developers - Denver Startup Week 2017
Front End Development for Back End Developers - Denver Startup Week 2017
Matt Raible
 
Vue.js - zastosowanie i budowa komponentów
Vue.js - zastosowanie i budowa komponentówVue.js - zastosowanie i budowa komponentów
Vue.js - zastosowanie i budowa komponentów
Laravel Poland MeetUp
 
How to Webpack your Django!
How to Webpack your Django!How to Webpack your Django!
How to Webpack your Django!
David Gibbons
 
20130528 solution linux_frousseau_nopain_webdev
20130528 solution linux_frousseau_nopain_webdev20130528 solution linux_frousseau_nopain_webdev
20130528 solution linux_frousseau_nopain_webdev
Frank Rousseau
 
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJSAngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
AngularJS training - Day 1 - Basics: Why, What and basic features of AngularJS
murtazahaveliwala
 
Vue micro frontend implementation patterns
Vue micro frontend implementation patternsVue micro frontend implementation patterns
Vue micro frontend implementation patterns
Albert Brand
 
Building and deploying React applications
Building and deploying React applicationsBuilding and deploying React applications
Building and deploying React applications
Astrails
 
Introduction to Vue.js
Introduction to Vue.jsIntroduction to Vue.js
Introduction to Vue.js
Meir Rotstein
 
Frontend microservices: architectures and solutions
Frontend microservices: architectures and solutionsFrontend microservices: architectures and solutions
Frontend microservices: architectures and solutions
Mikhail Kuznetcov
 
Drupal 8 what to wait from
Drupal 8   what to wait fromDrupal 8   what to wait from
Drupal 8 what to wait from
Andrii Podanenko
 
Ad

More from Commit University (20)

GitHub Copilot:vediamo chi comanda - Commit University.pdf
GitHub Copilot:vediamo chi comanda - Commit University.pdfGitHub Copilot:vediamo chi comanda - Commit University.pdf
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Commit University
 
Contract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdfContract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdf
Commit University
 
Cybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e SperanzeCybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e Speranze
Commit University
 
Migliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud NativeMigliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud Native
Commit University
 
Scopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAGScopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAG
Commit University
 
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Commit University
 
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdfOltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Commit University
 
Alla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAGAlla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAG
Commit University
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Commit University
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Commit University
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Commit University
 
Slide-10years.pdf
Slide-10years.pdfSlide-10years.pdf
Slide-10years.pdf
Commit University
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Commit University
 
Vue.js slots.pdf
Vue.js slots.pdfVue.js slots.pdf
Vue.js slots.pdf
Commit University
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
Commit University
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
Commit University
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Commit University
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
Commit University
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
Commit University
 
GitHub Copilot:vediamo chi comanda - Commit University.pdf
GitHub Copilot:vediamo chi comanda - Commit University.pdfGitHub Copilot:vediamo chi comanda - Commit University.pdf
GitHub Copilot:vediamo chi comanda - Commit University.pdf
Commit University
 
Contract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdfContract Driven Development - Branch 2024.pdf
Contract Driven Development - Branch 2024.pdf
Commit University
 
Cybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e SperanzeCybersecurity & AI: Illusioni e Speranze
Cybersecurity & AI: Illusioni e Speranze
Commit University
 
Migliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud NativeMigliorare la Developer Experience in un mondo Cloud Native
Migliorare la Developer Experience in un mondo Cloud Native
Commit University
 
Scopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAGScopri come sfruttare la potenza della Hybrid RAG
Scopri come sfruttare la potenza della Hybrid RAG
Commit University
 
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Introduzione a AWS Forecast e SageMaker DeepAR: Prevedere la Domanda con il M...
Commit University
 
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdfOltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Oltre l'hype: vulnerabilità e limiti dell'intelligenza artificiale.pdf
Commit University
 
Alla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAGAlla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAG
Commit University
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Commit University
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Commit University
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Commit University
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Commit University
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
Commit University
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
Commit University
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Commit University
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
Commit University
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
Commit University
 
Ad

Recently uploaded (20)

Providing an OGC API Processes REST Interface for FME Flow
Providing an OGC API Processes REST Interface for FME FlowProviding an OGC API Processes REST Interface for FME Flow
Providing an OGC API Processes REST Interface for FME Flow
Safe Software
 
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptxFIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance
 
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
Safe Software
 
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
angelo60207
 
PyData - Graph Theory for Multi-Agent Integration
PyData - Graph Theory for Multi-Agent IntegrationPyData - Graph Theory for Multi-Agent Integration
PyData - Graph Theory for Multi-Agent Integration
barqawicloud
 
Viral>Wondershare Filmora 14.5.18.12900 Crack Free Download
Viral>Wondershare Filmora 14.5.18.12900 Crack Free DownloadViral>Wondershare Filmora 14.5.18.12900 Crack Free Download
Viral>Wondershare Filmora 14.5.18.12900 Crack Free Download
Puppy jhon
 
MuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API CatalogMuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API Catalog
shyamraj55
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
Crypto Super 500 - 14th Report - June2025.pdf
Crypto Super 500 - 14th Report - June2025.pdfCrypto Super 500 - 14th Report - June2025.pdf
Crypto Super 500 - 14th Report - June2025.pdf
Stephen Perrenod
 
FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)
FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)
FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)
Safe Software
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdfWar_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
No-Code Workflows for CAD & 3D Data: Scaling AI-Driven Infrastructure
No-Code Workflows for CAD & 3D Data: Scaling AI-Driven InfrastructureNo-Code Workflows for CAD & 3D Data: Scaling AI-Driven Infrastructure
No-Code Workflows for CAD & 3D Data: Scaling AI-Driven Infrastructure
Safe Software
 
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdfcnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
AmirStern2
 
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Safe Software
 
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdfENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
Muhammad Rizwan Akram
 
Your startup on AWS - How to architect and maintain a Lean and Mean account
Your startup on AWS - How to architect and maintain a Lean and Mean accountYour startup on AWS - How to architect and maintain a Lean and Mean account
Your startup on AWS - How to architect and maintain a Lean and Mean account
angelo60207
 
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
SOFTTECHHUB
 
Analysis of the changes in the attitude of the news comments caused by knowin...
Analysis of the changes in the attitude of the news comments caused by knowin...Analysis of the changes in the attitude of the news comments caused by knowin...
Analysis of the changes in the attitude of the news comments caused by knowin...
Matsushita Laboratory
 
FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...
FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...
FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...
Safe Software
 
Edge-banding-machines-edgeteq-s-200-en-.pdf
Edge-banding-machines-edgeteq-s-200-en-.pdfEdge-banding-machines-edgeteq-s-200-en-.pdf
Edge-banding-machines-edgeteq-s-200-en-.pdf
AmirStern2
 
Providing an OGC API Processes REST Interface for FME Flow
Providing an OGC API Processes REST Interface for FME FlowProviding an OGC API Processes REST Interface for FME Flow
Providing an OGC API Processes REST Interface for FME Flow
Safe Software
 
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptxFIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance
 
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
National Fuels Treatments Initiative: Building a Seamless Map of Hazardous Fu...
Safe Software
 
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...Your startup on AWS - How to architect and maintain a Lean and Mean account J...
Your startup on AWS - How to architect and maintain a Lean and Mean account J...
angelo60207
 
PyData - Graph Theory for Multi-Agent Integration
PyData - Graph Theory for Multi-Agent IntegrationPyData - Graph Theory for Multi-Agent Integration
PyData - Graph Theory for Multi-Agent Integration
barqawicloud
 
Viral>Wondershare Filmora 14.5.18.12900 Crack Free Download
Viral>Wondershare Filmora 14.5.18.12900 Crack Free DownloadViral>Wondershare Filmora 14.5.18.12900 Crack Free Download
Viral>Wondershare Filmora 14.5.18.12900 Crack Free Download
Puppy jhon
 
MuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API CatalogMuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API Catalog
shyamraj55
 
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
Can We Use Rust to Develop Extensions for PostgreSQL? (POSETTE: An Event for ...
NTT DATA Technology & Innovation
 
Crypto Super 500 - 14th Report - June2025.pdf
Crypto Super 500 - 14th Report - June2025.pdfCrypto Super 500 - 14th Report - June2025.pdf
Crypto Super 500 - 14th Report - June2025.pdf
Stephen Perrenod
 
FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)
FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)
FME for Distribution & Transmission Integrity Management Program (DIMP & TIMP)
Safe Software
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdfWar_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
No-Code Workflows for CAD & 3D Data: Scaling AI-Driven Infrastructure
No-Code Workflows for CAD & 3D Data: Scaling AI-Driven InfrastructureNo-Code Workflows for CAD & 3D Data: Scaling AI-Driven Infrastructure
No-Code Workflows for CAD & 3D Data: Scaling AI-Driven Infrastructure
Safe Software
 
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdfcnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
cnc-drilling-dowel-inserting-machine-drillteq-d-510-english.pdf
AmirStern2
 
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Integration of Utility Data into 3D BIM Models Using a 3D Solids Modeling Wor...
Safe Software
 
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdfENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
ENERGY CONSUMPTION CALCULATION IN ENERGY-EFFICIENT AIR CONDITIONER.pdf
Muhammad Rizwan Akram
 
Your startup on AWS - How to architect and maintain a Lean and Mean account
Your startup on AWS - How to architect and maintain a Lean and Mean accountYour startup on AWS - How to architect and maintain a Lean and Mean account
Your startup on AWS - How to architect and maintain a Lean and Mean account
angelo60207
 
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
AudGram Review: Build Visually Appealing, AI-Enhanced Audiograms to Engage Yo...
SOFTTECHHUB
 
Analysis of the changes in the attitude of the news comments caused by knowin...
Analysis of the changes in the attitude of the news comments caused by knowin...Analysis of the changes in the attitude of the news comments caused by knowin...
Analysis of the changes in the attitude of the news comments caused by knowin...
Matsushita Laboratory
 
FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...
FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...
FME for Good: Integrating Multiple Data Sources with APIs to Support Local Ch...
Safe Software
 
Edge-banding-machines-edgeteq-s-200-en-.pdf
Edge-banding-machines-edgeteq-s-200-en-.pdfEdge-banding-machines-edgeteq-s-200-en-.pdf
Edge-banding-machines-edgeteq-s-200-en-.pdf
AmirStern2
 

Level up apps and websites with vue.js

Editor's Notes

  • #3: BENVENUTI AL NUOVO INCONTRO DEL COMMIT UNIVERSITY ->
  • #4: 24 anni da verona ->
  • #5: ed è un piacere essere qui ->
  • #9: sondaggio quando vecchi amici chiedono che lavoro fai...
  • #12: ci siamo resi conto che il problema era gestire lo stato della nostra applicazione ->
  • #17: i numeri sono raddoppiati dallo scorso anno ->
  • #19: dobbiamo pensare che la vista sia la rappresentaziobne visiva del nostro stato, il nostro compito è quello di eseguire i cambiamenti su di esso
  • #20: le proprietà di data hanno un setter ed un getter ciascuna, vengono collezionati in watcher che vengono notificati dai setter per triggerare nuovamente il render del layout
  • #22: Espressione javascript tra mustache syntax
  • #26: Espressione javascript tra attributi html
  • #30: differenze v-if per nascondere ciò che non vogliamo vedere v-show per nascondere momentaneamente qualcosa che poi sarà visibile costo di esecuzione maggiore per v-if
  • #32: prendere ogni cella dell’array todos ed averla a disposizione dal nodo su cui viene applicato il v-if e anche al suo interno
  • #35: eventi direttamente nell’html
  • #37: v-model viene applicato in qualsiasi tipo di input, al suo evento change la modifica viene propagata alla proprietà di data sul quale abbiamo applicato l’attributo
  • #40: vantaggio sequenziale, una dipende dall’altra
  • #44: computed è una proprietà dell’oggetto vue deve ritornare una variabile / dato viene chiamata come una prop di data è cachata se non vengono aggiornate dipendenze
  • #47: è una chiave dell’oggetto vue è una funzione che non deve ritornare per forza un valore, solitamente muta delle proprietà non è cachata
  • #53: spesso la definizione di component e la sua utilità non vengono concretamente comprese
  • #55: chiaramente header e footer non saranno riutilizzabili ma il singolo post del blog probabilmente si
  • #56: un insieme di tag html accessibili da un unico nodo ognuno con riferimento al proprio stile e la propria logica