Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
本番環境にVue.jsを使った話 / Use Vue.js at production
Search
Hiromi Kimura
August 02, 2017
1.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
本番環境にVue.jsを使った話 / Use Vue.js at production
Hiromi Kimura
August 02, 2017
More Decks by Hiromi Kimura
See All by Hiromi Kimura
マネーフォワード Pay for Businessのフロントエンド / Money Forward Pay for Business Frontend
kimromi
0
930
マネーフォワードクラウド経費でのフロントエンドの取り組み / moneyforward-expense-frontend
kimromi
4
1.2k
エンジニアにとってのアウトプットとはなにか考えた / what-is-output
kimromi
3
1.2k
TypeScriptで作るGitHubApps / make GitHub Apps by TypeScript
kimromi
0
680
ムームードメインのJavaScript環境を整えた話 / prepare muumuu-domain's javascript
kimromi
1
630
ぼくがかんがえたさいきょうのぷるりくえすと / saikyo-no-pull-request
kimromi
7
110k
Vue.js on Rails / vue-js-on-rails
kimromi
7
5.1k
how about Marp?
kimromi
0
170
engineer-guideline
kimromi
0
1.1k
Featured
See All Featured
KATA
mclloyd
PRO
35
16k
Designing for Performance
lara
612
70k
Music & Morning Musume
bryan
48
7.4k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
620
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
520
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
350
Rails Girls Zürich Keynote
gr2m
96
14k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
740
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
It's Worth the Effort
3n
188
29k
Transcript
ଜւ(.01FQBCP *OD 'VLVPLBQIQ ຊ൪ڥʹ7VFKTΛͬͨ
(.0ϖύϘϜʔϜʔυϝΠϯΤϯδχΞ ଜւ!LJNSPNJ ࣇͷύύʢࡀͷஉͷࢠʣ IUUQLJNSPNJIBUFOBCMPHKQ
IUUQTUFDIQFQBCPDPNNVVNVVTIPQQJOHDBSU
7VFKTʁ
Α͚ͩ͑͞·͢
IUUQTUSFOETHPPHMFDPNUSFOETFYQMPSF EBUFUPEBZZRWVFKT SFBDUKT BOHVMBSKT
ಛ wK2VFSZͷΘΓͱͯ͠খنʹ w41"443Ͱ͖େنʹ w*&Ҏ߱ʹରԠ wެࣜͷຊޠυΩϡϝϯτ͕Θ͔Γ͍͢ wখ࢝͘͞Ί͘͢ͱ͖͍ͬͭ͢ʂ IUUQTKQWVFKTPSH
)FMMP7VF <div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script
src="https://unpkg.com/vue"></script> <script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script>
݁Ռ
<div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script src="https://unpkg.com/vue"></script>
<script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> OFX7VF 7VFΠϯελϯεΛ࡞ )FMMP7VF
<div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script src="https://unpkg.com/vue"></script>
<script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> FMཧ͍ͨ͠%0.ͷJEΛࢦఆ )FMMP7VF
<div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script src="https://unpkg.com/vue"></script>
<script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> EBUB7VFΠϯελϯεʹอ࣋͢ΔσʔλΛએݴ )FMMP7VF
<div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script src="https://unpkg.com/vue"></script>
<script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> NFUIPETॲཧΛ͢ΔϝιουΛ࣮ IUNMଆ͔Β7VFΠϯελϯεͰݺͼग़͠Մೳ )FMMP7VF
<div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script src="https://unpkg.com/vue"></script>
<script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> )FMMP7VF
IUUQTUFDIQFQBCPDPNNVVNVVTIPQQJOHDBSU
͖ͬ͞ͷײ͡Ͱ͍ͬͯΔ 41"Ͱͳ͘443͍ͬͯ·ͤΜ
ཧ༝ wσβΠφʔͱڠۀͩͬͨ w3VCZPO3BJMTͷ্Ͱͬͨ
ཧ༝ wσβΠφʔͱڠۀͩͬͨ w3VCZPO3BJMTͷ্Ͱͬͨ 3BJMTͷ7JFXϑΝΠϧͰ݁ͤ͞Δ )5.-ͷςϯϓϨʔτΛ+BWB4DSJQUଆʹ࣋ͨͳ͍ ˠίϯϙʔωϯτΛ࣋ͨͳ͍
<div id="vue-app"> <h1 v-show="isShow">hello!</h1> <button v-on:click="showHello()">show hello</button> </div> <script src="https://unpkg.com/vue"></script>
<script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> ɾid=“vue-app”͔ͩΒ7VFKT͔͍ͭͬͯΔͷͩͳ ɾv- Ͱ࢝·͍ͬͯΔ͔ΒԿ͔ॲཧʹ͔͍ͭͬͯΔͷͩͳ ɾv-show දࣔΓସ͑Λ͢Δͭͩͳ ɾv-on:click ΫϦοΫͨ࣌͠ʹԿ͔͍ͯ͠Δͳ )5.-͔ΒಡΈऔΕΔใ͕ଟ͍ʂ )FMMP7VF
K2VFSZ <div> <h1 id="hidden-h1" style="display: none;">hello!</h1> <button id="h1-show">show hello</button> </div>
<script src="https://unpkg.com/vue"></script> <script> new Vue({ el: '#vue-app', data: { isShow: false, }, methods: { showHello: function () { this.isShow = true } } }) </script> ɾid="hidden-h1"Կʹ͍ͬͯΔJEͳͷͩΖ͏ ɾstyle="display: none;" DTTʹҠ͍͚ͨ͠ͲҠ͢ͱ ɹI͕࠷ॳ͔Βফ͑ͯΔ͜ͱ͕Θ͔Βͳ͘ͳΔͳ ɾid="h1-show" ͨͿΜΫϦοΫͨ͠ΒIΛද͍ࣔͯ͠ΔΜͩΖ͏ +BWB4DSJQU$44Λ֬ೝ͠ͳ͍ͱΘ͔Βͳ͍ʂ ˠ։ൃεϐʔυ͕μϯɺอक͠ʹ͍͘
͚ͭͩۤ࿑ͨ͠
BKBYΛ͏߹ w7VFKTਪͷBYJPTͱ͍͏)551ΫϥΠΞϯτΛ༻ IUUQTHJUIVCDPNN[BCSJTLJFBYJPT w1SPNJTFϕʔε w*&͕ରԠͯ͠ͳ͔ͬͨɾɾɾ
QPMZpMM͍ͭͰʹXFCQBDL CBCFM wCBCFMQPMZpMMͰQPMZpMMΛಉࠝ͢Δ͜ͱͰݹ͍ϒϥβ͑Δ w&4ʹτϥϯεύΠϧ w&4 &4 Ͱιʔείʔυॻ͚ΔΑ͏ʹͳͬͨʂ wͦͯ͠&4ɾɾ
·ͱΊ w7VFKTΓ্͕͍ͬͯΔʢΓ্͍͖͍͛ͯͨʂʣ wখ͔͘͞ΒͰ࢝ΊΒΕΔ w)5.-͔ΒಡΈऔΕΔใ͕ଟ͘อक͍͢͠ w+BWB4DSJQUΛϞμϯʹ͍ͯͧ͘͠ʂʂ
ࠓ͙͢ʂ <script src="https://unpkg.com/vue"></script>