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
Ionic V3 ー> V5 アップデートのツラミ / The pain of Ionic u...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
acnaman
May 20, 2020
Programming
820
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ionic V3 ー> V5 アップデートのツラミ / The pain of Ionic update
2020-05-20 PWA Night vol.16 ~オンラインLT大会!~ 発表資料
acnaman
May 20, 2020
More Decks by acnaman
See All by acnaman
問いのデザイン2章 / "The Design of Questions" Chapter 2
acnaman
0
1.1k
ABDで勉強会したらそれがチームビルディングになった話 / ABD is one of team-building method
acnaman
1
560
違和感 それはカイゼンのチャンス / Discomfort is an opportunity for Kaizen.
acnaman
0
630
オンライン登壇で意識したいこと / What online speakers should be aware of
acnaman
0
150
元読書嫌いが読書会を始めるまでの歩み
acnaman
0
250
カイゼンを始めて変わったこと
acnaman
1
1.6k
Other Decks in Programming
See All in Programming
FreeBSDでZabbixを動かす
kenkino
0
340
速習iPhone Duo対応
yuukiw00w
2
910
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
600
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
280
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
4.4k
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
1
570
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
220
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
350
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
350
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1k
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
19
19k
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
430
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Discover your Explorer Soul
emna__ayadi
2
1.3k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
450
A Modern Web Designer's Workflow
chriscoyier
699
190k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
550
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
490
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The Curse of the Amulet
leimatthew05
3
15k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
520
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Transcript
Ionic V3 ー> V5 アップデートの ツラミ 2020/5/20 PWA Night 加藤翼 @acnaman
自己紹介 • 加藤翼 • インフォテック株式会社 新規事業T プログラマー • GitHub : acnaman
• Twitter : acnaman_dev • コミュニティ運営メンバー 2
おことわり • スライドはアップ済みです • 基本ツイート等OKですが、1スライドの みダメなやつがあります →該当スライドのときにアナウンスします • ハッシュタグは #pwanight
で! • お酒片手(or両手)にお聞きください 3
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 4
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 5
知ってる人〜? Twitterアンケートに反応もとむ! 6
Ionicとは • モバイル向けJavaScriptフレームワーク • PWAの作成 • iOS/Androidネイティブアプリへの変換 • TechFeedとかで使われてます 7
メジャーバージョンの変遷 V3 2019年1月 V4 V5 2020年1月 8
メジャーバージョンの変遷 V3 2019年1月 V4 V5 2020年1月 独自路線の単体 フレームワーク (Angularベース) 他フレームワークとの
連携が可能 ※Vue対応はbeta 9
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 10
Ionic V3で構築したPWA • 新規事業のプロトタイプ • モバイル利用を想定したPWA • Ionic + Firebase
• 新規事業のため詳細は非公開です 11
V3に限界がきた • TypeScriptのバージョンアップに追随 しない ◦ プロダクションビルド時のエラー ◦ Jestのエラー →V5出たしアップデートしよう! 12
npmで最新落とせば いけるっしょー > npm install ionic/angular@latest こんな感じ? アップデート舐めてたぼく 13
npmで最新落とせば いけるっしょー > npm install ionic/angular@latest こんな感じ? アップデート舐めてたぼく 14 否
メジャーバージョンの変遷 V3 2019年1月 V4 V5 2020年1月 独自路線の単体 フレームワーク (Angularライク) 他フレームワークとの
連携が可能 大アップデート 破壊的な変更 ※Vue対応はbeta 15
「破壊的変更」の説明資料 1962行分の 「破壊的変更」 @IonicのGitHub 16
公式の移行ガイド さらっと 「プロジェクト作り直せ」 って書いてある 17
つらすぎるので移行方法書いた 18
一部抜粋 19
CLIのバージョンアップ 新しいCLIをインストール パッケージ名すら変わっているという罠 20 V3 V5 CLIパッケージ名 ionic @ionic/cli
チェックツールを使う 「破壊的な変更」のチェックツール チェックツール:https://github.com/ionic-team/V4-migration-tslint 21 V3のソースファイル チェックツール レポートログ
ソースの移行方法 旧プロジェクト (チェックツール分修正済み) > ionic generate XXX 新プロジェクト 生成されたファイルに 中身をコピペする
新Ionic用の ファイルを生成 22 新プロジェクト作成+ionic generate →生成されたファイルに中身をコピペ
続きはQiitaで! https://qiita.com/acnaman/items/b44b09b1f0c0c341c081 23
アジェンダ • Ionicとは • V3→V5へバージョンアップした話 • バージョンアップのツラミ(裏話) 24
ツラミ1:開発が止まる • ぼっち開発者 • アップデート作業中は機能追加ができ ない 25 機能 追加 アップ
デート
どうすべきだったか? • 機能が多くなる前にバージョンアップ すべきだった 26 対象ファイル少ない 対象ファイル多い
ツラミ2:重くなる • アプデ後の初期ロードが遅い ◦ ファイル数の増加 ▪ 79ファイル → 1122ファイル ◦
Angularの最適化できてない 27
どうすべきだったか? • Angularのチューニング ◦ service-workerでキャッシュ制御 ◦ Lazy Load 28 ただし頻繁に更新する時期だと
やりづらい 学習コスト高いの が悩み…
もちろん良かったことも • TypeScriptのエラーは消滅 • Angularの恩恵を受けられる ◦ V3はAngularの機能を使い切れない ◦ ドキュメント豊富 29
これから新しく作る場合はIonic V5で作りましょう
まとめ • IonicはPWAを作れるフレームワーク • V3→V4で大きなアップデートがあった • アップデート手順はQiitaにまとめた • アップデートしても全てが良くなるわ けではない(重くなるなど)
30