====== Angular7でPWAをNetlifyにデプロイ ======
2019年2月現在、[[00.ionic4:09.ionic4でpwa|Ionic4でPWA(Progressive Web Apps)]]にて、Ionic4でFirebase HostingにPWAをデプロイすることはできたのですが、私の技術では、Netlifyにデプロイしても、PWAを機能させることができません。
まずは、Angular7でNetlifyにPWAをデプロイしてみたいと思います。
以下のサイトをAngular7で写経してみたい。
https://swfz.hatenablog.com/entry/2018/08/15/080034
{{:z_blog:2019:pasted:20190220-083620.png}}
===== 開発環境 =====
WindowsでのAngular7(Ionic4)環境構築方法については、[[00.ionic4:01.windowsでionicを始める方法#オプション:nvm-windowsでNode.jsのバージョン管理|WindowsでIonicを始める方法]]をご覧ください。
Panasonic CF-RZ6
Windows10 Pro (1803)
VisualStudioCode
git version 2.20.1.windows.1
Node v10.15.1
npm 6.4.1
@angular/cli 7.3.1
今回構築した環境
@angular/pwa 0.13.1
===== すること =====
-Angular7アプリをPWA化
-Netlifyにデプロイ
-Androidスマホにインストール
ソースコード
https://github.com/adash333/angular7-pwa
DEMO
https://vigorous-spence-33c567.netlify.com/
===== 新規Angular7アプリの作成 =====
-VisualStudioCodeでWindowsのC:/js/フォルダを開く
-Ctrl+@でターミナル画面を開いて、以下を入力します
ng new angular7-pwa --style=scss --routing
5分くらいかかった気がします。
{{:z_blog:2019:pasted:20190220-094235.png}}
{{:z_blog:2019:pasted:20190220-095132.png}}
{{:z_blog:2019:pasted:20190220-095151.png}}
cd angular7-pwa
ng serve
{{:z_blog:2019:pasted:20190220-100220.png}}
Chromeで、http://localhost:4200/ を開くと、以下のようになります。
{{:z_blog:2019:pasted:20190220-100407.png}}
===== PWA化 =====
以下を入力します。
ng add @angular/pwa
{{:z_blog:2019:pasted:20190221-194437.png}}
src/ngsw-config.json
src/manifest.json
の2つのファイルが作成されています。
{{:z_blog:2019:pasted:20190221-194901.png}}
{{:z_blog:2019:pasted:20190221-194912.png}}
===== ビルド =====
productionモードでbuildします。Angularの場合、今回は、dist/angular7-pwa/ フォルダに作成されます。以下を入力します。
ng build --aot --prod
{{:z_blog:2019:pasted:20190221-195423.png}}
===== GitHubにpush(アップロード) =====
Netlifyにデプロイするために、GitHubにpushします。
-https://github.com/ にログインして、"angular7-pwa"という名前で新規レポジトリを作成
-ローカルパソコンのVisualStudioCodeのターミナル画面で以下を入力。
git add .
git commit -m "first commit"
git remote add origin https://github.com/adash333/angular7-pwa.git
git push -u origin master
{{:z_blog:2019:pasted:20190221-195750.png}}
{{:z_blog:2019:pasted:20190221-195820.png}}
{{:z_blog:2019:pasted:20190221-195910.png}}
{{:z_blog:2019:pasted:20190221-200137.png}}
{{:z_blog:2019:pasted:20190221-200154.png}}
===== Netlifyにデプロイ =====
-https://www.netlify.com/ にログイン
-New Site from Gitをクリック
-GitHubをクリックして、認証を確認
-先ほどの"angular7-pwa.git"を選んでクリック
{{:z_blog:2019:pasted:20190221-200314.png}}
{{:z_blog:2019:pasted:20190221-200339.png}}
{{:z_blog:2019:pasted:20190221-200401.png}}
{{:z_blog:2019:pasted:20190221-200501.png}}
*以下のように入力して、Deploy site をクリック。しばらく待ちます。
{{:z_blog:2019:pasted:20190221-200627.png}}
*デプロイが終了したら、リンクをクリック
{{:z_blog:2019:pasted:20190221-201235.png}}
https://vigorous-spence-33c567.netlify.com/
*PWA化されているようです
{{:z_blog:2019:pasted:20190221-201355.png}}
*自分のAndroidスマホでサイトにアクセスして、ホーム画面に追加できるか試してみます。
{{:z_blog:2019:pasted:20190221-201933.png}}
*PWAとしてホーム画面に追加に追加することができ、その後、オフラインにしても、起動しました。
{{:z_blog:2019:pasted:20190221-202022.png}}
Ionic4でも同じ方法でNetlifyにPWAとしてデプロイしたい、、、
===== ソースコード =====
https://github.com/adash333/angular7-pwa
DEMO
https://vigorous-spence-33c567.netlify.com/
===== AngularとPWAのリンク =====
https://www.smashingmagazine.com/2018/09/pwa-angular-6/
september 20, 2018 20 comments
Building A PWA Using Angular 6
===== 見出し =====