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
73
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
380
New Vue. New Compiler. Let's Unpack
znck
4
2.6k
Head first into composition API
znck
0
180
Future of Vue – JSFoo VueDay 2019
znck
0
550
React to Vue: why and how?
znck
0
85
Collocation in Modern Web
znck
0
78
Other Decks in Programming
See All in Programming
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
870
CSC307 Lecture 01
javiergs
PRO
0
670
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
190
Basic Architectures
denyspoltorak
0
360
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
500
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
150
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
640
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
370
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.5k
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
110
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
330
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
140
Featured
See All Featured
Deep Space Network (abreviated)
tonyrice
0
34
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
260
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
58
41k
WCS-LA-2024
lcolladotor
0
420
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
290
30 Presentation Tips
portentint
PRO
1
190
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.8k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.8k
So, you think you're a good person
axbom
PRO
2
1.9k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
70
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
890
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