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
Vue.jsでTypeScriptを使ってみる
Search
Takayuki
October 25, 2019
Technology
0
220
Vue.jsでTypeScriptを使ってみる
Vue.jsでTypeScriptを使ってみる
Takayuki
October 25, 2019
Tweet
Share
More Decks by Takayuki
See All by Takayuki
Laravel × Clean Architecture
bumptakayuki
0
250
エンジニアのキャリア論
bumptakayuki
0
180
地方カンファレンス主催のススメ
bumptakayuki
1
200
Laravelで敢えて試す脆弱性のある書き方
bumptakayuki
2
1k
地方でのPHPエンジニア採用って実際どうなの?
bumptakayuki
0
640
沖縄観光、名物を一挙紹介!
bumptakayuki
2
640
Laravel ShiftでLaravelのバージョンアップしてみた話
bumptakayuki
1
2.5k
flutterでイベントアプリを作ってみた
bumptakayuki
0
160
オフショア開発の辛みと学んだ事
bumptakayuki
0
390
Other Decks in Technology
See All in Technology
In Praise of "Normal" Engineers (LDX3)
charity
3
1.2k
IAMのマニアックな話 2025を執筆して、 見えてきたAWSアカウント管理の現在
nrinetcom
PRO
4
660
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
7
720
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
210
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
53
32k
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
110
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
1
400
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
140
Definition of Done
kawaguti
PRO
6
460
Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025
iselegant
16
4.5k
AWS CDK 実践的アプローチ N選 / aws-cdk-practical-approaches
gotok365
4
500
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
150
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
430
65k
Why Our Code Smells
bkeepers
PRO
337
57k
The Pragmatic Product Professional
lauravandoore
35
6.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Being A Developer After 40
akosma
90
590k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Facilitating Awesome Meetings
lara
54
6.4k
Transcript
Vue.jsでTypeScriptを使ってみる 鈴木孝之
"HFOEB ࣗݾհɾձࣾհ 5ZQF4DSJQUͱʁ 7VFKTͰͷಋೖํ๏
ࣗݾհɾձࣾհ
1.ࣗݾհ ◆໊લ ླ ೭(Suzuki Takayuki) ※ಉಉ໊ଟͯ͘ࠔͬͯ·͢ɻɻɻ ◆ࣗݾհ ɾ1990ɺਆಸݝੜ·Εɻ ɾࣾձਓʹͳ͔ͬͯΒɺϓϩάϥϛϯάΛ࢝ΊΔɻ ɾ2015ʹϑϧεϐʔυʹೖࣾ͠ɺ2017ʹಠཱɻ
ɾݱࡏɺडୗ։ൃΛΓͭͭɺࣗࣾWebαʔϏεΛ։ൃதɻ ◆झຯ ίεϓϨɺԻָϥΠϒɺϚϥιϯେձʹग़Δɺٿ؍ઓ ◆εΩϧ PHP,Symfony2,CakePHP3,Laravel5, JavaScript,backbone.js,Angular.js
1.ࣗݾհ
Copyright Re:Build.inc All Rights Reserved. ձࣾհ ◆ձ໊ࣾ גࣜձࣾRe:Build ◆ॅॴ ԭೄݝԭೄࢢதԝ̍ஸ̍̒−̕
◆ࣄۀ༰ ɾࣗࣾWEBαʔϏεͷاըɾ։ൃɻ ɾडୗ։ൃ ◆ࣾһ 7໊ ◆ΤϯδχΞͷಇ͖ํ ϦϞʔτϫʔΫՄೳͳࣗ༝ͳಇ͖ํΛਪͯ͠·͢ʂ
5ZQF4DSJQUͱʁ
5ZQF4DSJQUͱʁ TypeScript2012ʹϚΠΫϩιϑτʹΑͬͯ։ൃ͞ΕͨΦʔϓϯιʔεͷϓϩ άϥϛϯάݴޠͰJavaScriptͷεʔύʔηοτʢ্ҐޓʣͳҐஔ͚ͮͷݴޠͰ ͢ɻ มαϒϧʔνϯΛ҆શʹѻ͑Δ੩తܕ͖ݴޠͰ͋Δ͜ͱΫϥεΛ༻Ͱ ͖ΔͳͲJavaScriptͷܽΛิ͢Δ͜ͱΛతͱͯ͠։ൃ͞Ε·ͨ͠ɻ TypeScriptΫϥΠΞϯταΠυɾαʔόʔαΠυ྆ํͷ։ൃͰར༻͢Δ͜ͱ͕ ՄೳͰɺେنͳΞϓϦέʔγϣϯ։ൃΛߦ͏͜ͱ͕ՄೳͰ͢ɻ https://www.engineer-route.com/column/2679/
ϝϦοτɾಛ TypeScriptΛಋೖͨ͠ํ͕ྑ͍έʔε ιʔείʔυ͕େͰ ͋Δ߹ɺ·ͨෳͷ ਓ͕ϓϩδΣΫτʹै ࣄ͍ͯ͠Δ߹ɺܕγ εςϜ໌Β͔ͳΤϥʔ Λ͙ͷʹཱͪ·͢ɻ 1 νʔϜϝϯόC#
JavaͷΑ͏ͳڧ͍ܕ͖ ݴޠͷόοΫάϥϯυ Λ࣋ͪɺJavaScriptΛͱ ͜ͱΜֶͿؾͳ͍ͱ͍ ͏߹ɺTS͍͍ସ ҊͩͱࢥΘΕ·͢ɻ 2 TypeScriptΫϥεϕʔεͳ ݴޠͷͨΊɺJavaͳͲͷΦϒ δΣΫτࢦݴޠಉ༷Ϋϥε Λѻ͏͜ͱ͕Ͱ͖·͢ɻ ίϯετϥΫλɺϝιουɺ ϓϩύςΟͳͲͷϝϯόΛѻ ͏͜ͱͪΖΜՄೳͰ͢ɻ 3 ίʔυαΠζ ϝϯόʔͷաڈͷܦݧ Ϋϥεϕʔεͳݴޠ https://postd.cc/when-should-i-use-typescript/
䡧ಠࣗ ɾܕऍʢมɺҾɺΓͳͲͷܕએݴʣͱ ίϯύΠϧ࣌ͷܕνΣοΫ ɾܕਪ, ܕΨʔυ - ifจͷ instanceof ͳͲΛར༻ ͨ͠ܕਪ
ɾΠϯλʔϑΣΠε ɾྻڍܕ FOVN ɾMixin ɾδΣωϦοΫ ɾ໊લۭؒ ɾλϓϧ ɾڞ༻ମܕ ɾܕΤΠϦΞε ϝϦοτɾಛ
7VFKTͰͷಋೖํ๏
https://qiita.com/nrslib/items/be90cc19fa3122266fd7 ४උ vue-cli Λར༻͢Δʹ node.js ΛΠϯετʔϧͯ͠ npm Λར༻ͯ͠ vue-cli ΛΠϯετʔϧ͠·͢ɻ
https://qiita.com/nrslib/items/be90cc19fa3122266fd7 ४උ ϓϩδΣΫτ vue create ίϚϯυͰ࡞͠·͢ɻ ίϚϯυ vue create <project-name>
Ͱࢦఆ͠·͢ɻ
https://qiita.com/nrslib/items/be90cc19fa3122266fd7 ४උ Typescript Λར༻͢ΔͨΊ ʹ Manually select features Λબ͠·͢ɻ
https://qiita.com/nrslib/items/be90cc19fa3122266fd7 ४උ Πϯετʔϧޭʂ
https://qiita.com/nrslib/items/be90cc19fa3122266fd7 ४උ ىಈʂ
https://qiita.com/nrslib/items/be90cc19fa3122266fd7
ॻ͖ํ ɾ.vueϑΝΠϧͰ<script lang="ts">Λ͏ ɾvue-property-decoratorΛͬͨσίϨʔλํࣜͷTypeScript ԽΛߦ͏
ҧ͍ JS TypeScript
ը໘͔Βͷ ೖग़ྗͷܕΛ ୲อ 7VFKTͩͱԿ͕خ͍͠ͷ͔ʁ APIΛୟ͘ࡍͷೖग़ྗ ͷܕΛ୲อ
·ͱΊ ɾιʔείʔυ͕େͰ͋Δ߹ɺ·ͨෳͷਓ͕ϓϩδΣΫτʹैࣄ ͍ͯ͠Δ߹ɺTypeScriptΛ͏ར͕͋Δɻ ɾνʔϜϝϯόC#JavaͷΑ͏ͳڧ͍ܕ͖ݴޠͷόοΫάϥϯ υΛ͍࣋ͬͯΔ߹ɺTS͍͍ͱࢥ͍·͢ɻ ɾ։ൃεϐʔυΛগ͠མͱͯ͠ݎ࿚ʹ࡞Γ͍ͨ߹Φεεϝ