Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Choosing Vue.js
Search
Rahul Kadyan
September 15, 2017
Programming
0
78
Choosing Vue.js
Why would you choose Vue?
Rahul Kadyan
September 15, 2017
Tweet
Share
More Decks by Rahul Kadyan
See All by Rahul Kadyan
Inversion of Control in a Vue Application
znck
0
390
New Vue. New Compiler. Let's Unpack
znck
4
2.6k
Head first into composition API
znck
0
190
Future of Vue – JSFoo VueDay 2019
znck
0
560
React to Vue: why and how?
znck
0
90
Collocation in Modern Web
znck
0
92
Other Decks in Programming
See All in Programming
Railsの気持ちを考えながらコントローラとビューを整頓する/tidying-rails-controllers-and-views-as-rails-think
moro
5
390
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
110
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
370
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
220
TipKitTips
ktcryomm
0
160
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
120
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
500
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.1k
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.6k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
430
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
430
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
110
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
0
270
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
390
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
110
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
85
Balancing Empowerment & Direction
lara
5
940
Measuring & Analyzing Core Web Vitals
bluesmoon
9
780
Building Adaptive Systems
keathley
44
3k
Facilitating Awesome Meetings
lara
57
6.8k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Transcript
65K+ Stars Top 10 All Time
250K+ Weekly Active Users Chrome DevTools Extension
None
None
Rahul Kadyan Vue.js Core Contributor Software Engineer - Myntra
Choosing xxx Choosing Vue
Team Choosing for your team 1. Simplicity 2. Resources 3.
Performance
It’s simple
None
krausest/js-framework-benchmark 0.9 0.975 1.05 1.125 1.2 Slowdown 1.04 1.19 1.15
Angular React Vue
Tech Choosing for features 1. Declarative Rendering 2. Composition 3.
Stylesheets or CSS
None
{ template: `<App> <Sidebar /> <Content> <p>Hello World </p> </Content>
</App>` } HTML { render () { return ( <App> <Sidebar /> <Content> <p>Hello World </p> </Content> </App> ) } } JSX { render (h) { return h('App', [ h('Sidebar'), h('Content', [ h( 'p', 'Hello World’ ) ]) ]) } } JS
None
<app> <app-header></app-header> <app-footer></app-footer> </app> <div class="container"> <header> <slot name="header"></slot> </header>
<main> <slot></slot> </main> <footer> <slot name="footer"></slot> </footer> </div> <div class="parent"> <child> <template scope="props"> <span>hello from parent</span> <span>{{ props.text }}</span> </template> </child> </div>
None
<child message=“hello!"></child> <child :my-message="parentMsg"></child> <input @keyup.enter="submit">
None
None
Tech Choosing for large applications 1. Client Side Routing 2.
Application State 3. Optimisation Efforts
None
None
None
Tech Choosing for emerging markets 1. Server Side Rendering
None
DX Choosing for developer experience 1. Collocation 2. Editor Support
3. Build & Test Tools 4. Browser DevTools
Templates Scripts Styles
Template Script Style
posva/vim-vue vuejs/vetur vuejs/vue-syntax-highlight
None
vue-test-utils In pre-release stage.
None
None
– Jacob Schatz, Lead Frontend Developer, GitLab “We chose it
(vue) because it was more simple than everything out at there. It makes it easy to grasp the concepts and it was also easy to make a large app.”
@znck0