プログレッシブWebアプリ102:プログレッシブWebアプリをゼロから構築する

UnsplashのCaspar Rubinによる「黒いAndroidスマートフォンをオンにしました」

パート1でプログレッシブWebアプリ(PWA)について学習しました。このパートでは、フレームワークではなくDOM操作のみを使用して、プログレッシブWebアプリを構築します。

これまでに学んだことを簡単に復習しましょう。アプリがプログレッシブであるためには、次の要件が必要です。

  1. マニフェストファイル— manifest.json
  2. 少なくともフェッチイベントを持つService Worker — serviceworker.js
  3. アイコン— icon.jpeg
  4. HTTPS経由で提供— https://www.myawesomesite.com

このチュートリアルでは、要件1と2について説明します。マニフェストファイルを作成し、Service Workerを登録します。

目的

この例では、シンプルなプログレッシブWebアプリを作成します。プログレッシブWebアプリの概念に集中できるように、複雑さは意図的にシンプルに保たれています。これらの概念を取り入れて、独自のAngular、React、Vue、またはバニラのJavaScriptアプリに適用できるはずです。

ミームエンジンを作成します。 giphy.comから最新のトレンドミームを引き出し、アプリに表示します。ユーザーは、接続がダウンしている場合でも画像を表示できる必要があります。したがって、シームレスなオフライン体験を提供しています。

すばらしいです!それでは、重要なものに取り掛かりましょう。

ステップ0:アプリをビルドする

スケルトンindex.htmlから始めましょう。

<!DOCTYPE html>


    
    すべてのミーム!</ title>
    <link rel = "stylesheet" href = "/ styles.css">
</ head>
<本体>
<ヘッダー>
    <h1 class = "center">今日のトップトレンドミーム</ h1>
</ header>
<メイン>
    <div class = "container"> </ div>
</ main>
</ins><div class="neighbor-articles"><h4 class="ui header">こちらもご覧ください</h4><a href="/item/2018-the-year-bitcoin-separated-from-the-pack-51ccc9/" title="2018、パックから分離されたビットコインの年">2018、パックから分離されたビットコインの年</a><a href="/item/blockchain-technology-and-virtual-worlds-part-1-bce11e/" title="ブロックチェーン技術と仮想世界—パート1">ブロックチェーン技術と仮想世界—パート1</a><a href="/item/the-problem-with-money-online-be655d/" title="お金の問題…オンライン">お金の問題…オンライン</a><a href="/item/maybe-only-tim-cook-can-fix-facebook-s-privacy-problem-ea9378/" title="たぶん、Tim CookだけがFacebookのプライバシー問題を修正できる">たぶん、Tim CookだけがFacebookのプライバシー問題を修正できる</a><a href="/item/the-birth-of-verge-currency-154eba/" title="誕生の危機">誕生の危機</a></div></main><div class="push"></div></div><footer><div class="flags-footer"><a href="https://vi.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="vn flag"></i></a><a href="https://uk.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="ua flag"></i></a><a href="https://tr.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="tr flag"></i></a><a href="https://th.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="th flag"></i></a><a href="https://sv.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="ch flag"></i></a><a href="https://sr.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="rs flag"></i></a><a href="https://sl.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="si flag"></i></a><a href="https://sk.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="sk flag"></i></a><a href="https://ru.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="ru flag"></i></a><a href="https://ro.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="ro flag"></i></a><a href="https://pt.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="pt flag"></i></a><a href="https://pl.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="pl flag"></i></a><a href="https://de.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="de flag"></i></a><a href="https://ar.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="sa flag"></i></a><a href="https://bg.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="bg flag"></i></a><a href="https://cs.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="cz flag"></i></a><a href="https://da.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="dk flag"></i></a><a href="https://el.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="gr flag"></i></a><a href="https://es.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="es flag"></i></a><a href="https://et.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="ee flag"></i></a><a href="https://fi.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="fi flag"></i></a><a href="https://fr.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="fr flag"></i></a><a href="https://hi.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="in flag"></i></a><a href="https://hr.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="hr flag"></i></a><a href="https://hu.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="hu flag"></i></a><a href="https://id.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="id flag"></i></a><a href="https://dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="it flag"></i></a><a href="https://ko.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="kr flag"></i></a><a href="https://lt.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="lt flag"></i></a><a href="https://lv.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="lv flag"></i></a><a href="https://ms.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="my flag"></i></a><a href="https://nl.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="nl flag"></i></a><a href="https://no.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="no flag"></i></a><a href="https://uz.dupliceopportunita.com/item/progressive-web-apps-102-building-a-progressive-web-app-from-scratch-e80ab9/"><i class="uz flag"></i></a></div>dupliceopportunita.com<!-- --> © <!-- -->2020<!-- --> </footer></div></div></div></body></html>