国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ビルドレスに行く

Apr 17, 2025 am 10:00 AM

ビルドレスに行く

長距離の関係には、多くの場(chǎng)合、頻繁なフライトが含まれます。これらのフライト中、Redditに追いつくというアイデアは魅力的になります。オフラインのRedditアプリを検索する代わりに、私は獨(dú)自に構(gòu)築し、最新のWebテクノロジーと「ビルドレス」開発アプローチを紹介することにしました。

この投稿では、革新的なWeb開発者とその貢獻(xiàn)を祝います。ステップバイステップのチュートリアルではありませんが、完全なコードはGitHubで利用できます。

目標(biāo)はRedditリーダーであり、ツールと依存関係を最小限に抑えます。利用します:

  • Litelement: Webコンポーネントを活用する軽量で使いやすいコンポーネントモデル。
  • @Vaadin/Router:優(yōu)れた開発者エクスペリエンスを備えたコンパクトルーター。
  • @Pika/Web:開発中のモジュール管理を簡素化します。
  • ES-DEV-SERVER:簡単なDEVサーバー(HTTPサーバーは機(jī)能しますが)。

また、ブラウザの標(biāo)準(zhǔn)、ESモジュール、Webコンポーネント、インポートマップ、KVストレージ、およびサービスワーカーの標(biāo)準(zhǔn)を活用します。

依存関係のインストール:

 npm i -s lit -element @vaadin/router
npm i -d @pika/web es-dev-server

package.jsonpostinstallスクリプトを追加します:

 「スクリプト」:{
  「スタート」:「es-dev-server」、
  「ポストインストール」:「Pika-Web」
}

PIKA:依存関係を合理化します

Pika(Fred K. Schott by)は、Web開発を簡素化し、 web_modules/ Directoryに個(gè)々のJavaScriptファイルとして依存関係をインストールします。これにより、プロセスが簡素化され、複雑なビルド構(gòu)成が回避されます。出力は次のとおりです。

 <code>└─ web_modules/ ├─ lit-element.js └─ @vaadin └─ router.js</code>

インポートマップ:ベア仕様を解決します

index.htmlには、ベアモジュールの仕様を処理するためのインポートマップが含まれています。

<script type="importmap">
  {
    "imports": {
      "@vaadin/router": "/web_modules/@vaadin/router.js",
      "lit-element": "/web_modules/lit-element.js"
    }
  }
</script>
<reddit-pwa-app></reddit-pwa-app>

reddit-pwa-app.js

 'lit-element'から{litelement、html}をimport;

クラスredditpwaappはlitelementを拡張します{
  與える() {
    html`を返します<h1>こんにちは世界!</h1> `;
  }
}

customelements.define( 'reddit-pwa-app'、redditpwaapp);

インポートマップは、複雑なビルドプロセスなしでブラウザの互換性を有効にして、ベアモジュール仕様の問題を解決します。

サービスワーカー:オフライン機(jī)能

オフラインアクセスを有効にするために、 index.htmlに登録されているサービスワーカー( sw.js )を?qū)g裝してください。

 if( 'serviceworker' in Navigator){
  window.addeventlistener( 'load'、()=> {
    navigator.serviceworker.register( './ sw.js');
  });
}

サービスワーカーは資産を事前にキャッシュし、オフライン機(jī)能を確保します。 Pikaは、資産の明確なリストを提供することにより、これを簡素化します。 ( sw.js詳細(xì)については、GitHub Repoを參照してください)。

KVストレージ:オフラインデータの永続性

投稿をオフラインで保存するには、indexedDBの上に階層化された內(nèi)蔵モジュールであるKVストレージを使用します。非同期操作を提供し、ローカルストレージ上のパフォーマンスの向上を提供します。ポリフィルは、より幅広いブラウザのサポートを確保するために使用されます。 (実裝の詳細(xì)については、Github Repoを參照してください)。

インポートマップを使用したポリフィル

KVストレージポリフィル( kv-storage-polyfill )が含まれており、インポートマップを介して管理されており、ネイティブKVストレージが利用できない場(chǎng)合にフォールバックメカニズムを提供します。

結(jié)論

このプロジェクトは、最小限の依存関係で機(jī)能的なPWAを構(gòu)築することを?qū)g証し、最新のWeb標(biāo)準(zhǔn)の利點(diǎn)とビルドレスアプローチの利點(diǎn)を強(qiáng)調(diào)しています。代替ビルドツールが存在しますが、この方法はシンプルさとアクセスの容易さを優(yōu)先します。 GitHubリポジトリは、さらに探索するための完全なコードベースを提供します。フィードバックとディスカッションは、Twitter(@passle_または@openwc)およびopen-wc.orgで大歓迎です。

謝辭:

Guy Bedford(ES-Module-Shims)、Luke Jackson(「そのアプリを構(gòu)築しないでください!」)、Benny Powers、Lars Den Bakkerの貢獻(xiàn)に感謝します。

以上がビルドレスに行くの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

「レンダリングブロッキングCSS」とは何ですか? 「レンダリングブロッキングCSS」とは何ですか? Jun 24, 2025 am 12:42 AM

ブラウザは、特にインポートされたスタイルシート、ヘッダーのインラインCSS、および最適化されていないメディアクエリスタイルを使用して、ブラウザがインラインおよび外部CSSをデフォルトで主要なリソースとして表示するため、ページレンダリングをブロックします。 1.重要なCSSを抽出し、HTMLに埋め込みます。 2。JavaScriptを介して非クリティカルなCSSの読み込みを遅らせる。 3.メディア屬性を使用して、印刷スタイルなどのロードを最適化します。 4.リクエストを減らすためにCSSを圧縮およびマージします。ツールを使用してキーCSSを抽出し、REL = "Preload"非同期負(fù)荷を組み合わせ、過度の分割と複雑なスクリプト制御を避けるためにメディア遅延荷重を合理的に使用することをお?jiǎng)幛幛筏蓼埂?/p>

Autoprefixerとは何ですか?それはどのように機(jī)能しますか? Autoprefixerとは何ですか?それはどのように機(jī)能しますか? Jul 02, 2025 am 01:15 AM

Autoprefixerは、ターゲットブラウザスコープに基づいてCSS屬性にベンダープレフィックスを自動(dòng)的に追加するツールです。 1.エラーで接頭辭を手動(dòng)で維持する問題を解決します。 2. PostCSSプラグインフォーム、CSSを解析し、プレフィックスする必要がある屬性を分析し、構(gòu)成に従ってコードを生成する屬性を分析します。 3.使用手順には、プラグインのインストール、ブラウザーリストの設(shè)定、ビルドプロセスでそれらを有効にすることが含まれます。 4。メモには、接頭辭を手動(dòng)で追加しない、構(gòu)成の更新を保持すること、すべての屬性ではなくプレフィックスを維持することが含まれ、プリ??プロセッサでそれらを使用することをお?jiǎng)幛幛筏蓼埂?/p>

conic-gradient()関數(shù)とは何ですか? conic-gradient()関數(shù)とは何ですか? Jul 01, 2025 am 01:16 AM

TheConic-Gradient()functionsscreateScular勾配の勾配は、測(cè)定されていることを確認(rèn)してください

粘著性ヘッダーまたはフッターを作成するためのCSSチュートリアル 粘著性ヘッダーまたはフッターを作成するためのCSSチュートリアル Jul 02, 2025 am 01:04 AM

to CreateStickyheadersandfooterswithcss、使用ポジション:Stickyforheaderswithtopvalueandz-index、ParentContainersdon’trestrictit.1.forstickyheaders:Setposition:Sticky、Top:0、Z-Index、およびBackgroundColor.2

CSSカスタムプロパティの範(fàn)囲は何ですか? CSSカスタムプロパティの範(fàn)囲は何ですか? Jun 25, 2025 am 12:16 AM

CSSカスタムプロパティの範(fàn)囲は宣言のコンテキストに依存します。通常、グローバル変數(shù)は次のように定義されます。一方、ローカル変數(shù)は、スタイルのコンポーネント化と分離のために特定のセレクター內(nèi)で定義されます。たとえば、.cardクラスで定義されている変數(shù)は、クラスとその子供に一致する要素でのみ使用できます。ベストプラクティスには以下が含まれます。1。使用:ルートトピック色などのグローバル変數(shù)を定義する。 2。コンポーネント內(nèi)のローカル変數(shù)を定義して、カプセル化を?qū)g裝します。 3.同じ変數(shù)を繰り返し宣言しないでください。 4.セレクターの特異性によって引き起こされる可能性のあるカバレッジの問題に注意してください。さらに、CSS変數(shù)はケースに敏感であり、エラーを回避するために使用する前に定義する必要があります。変數(shù)が未定義の場(chǎng)合、または參照が失敗した場(chǎng)合、フォールバック値またはデフォルト値の初期が使用されます。デバッグは、ブラウザ開発者を介して実行できます

CSSグリッドのFRユニットとは何ですか? CSSグリッドのFRユニットとは何ですか? Jun 22, 2025 am 12:46 AM

ThefrunitinCSSGriddistributesavailablespaceproportionally.1.Itworksbydividingspacebasedonthesumoffrvalues,e.g.,1fr2frgivesone-thirdandtwo-thirds.2.Itenablesflexiblelayouts,avoidsmanualcalculations,andsupportsresponsivedesign.3.Commonusesincludeequal-

モバイルファーストデザインに焦點(diǎn)を當(dāng)てたCSSチュートリアル モバイルファーストデザインに焦點(diǎn)を當(dāng)てたCSSチュートリアル Jul 02, 2025 am 12:52 AM

Mobile-firstcsssdesignRequiresTtingtheviewportatatag、使用、stylumsmallscreensup、optimingTouchTargets.first.second、cecond、em、orreminsteadofpixelseders.ths.thsthird、writebasethirdird、addtocontrolscaling.second、addtocontrolscaling.second

本質(zhì)的にレスポンシブなグリッドレイアウトを作成する方法は? 本質(zhì)的にレスポンシブなグリッドレイアウトを作成する方法は? Jul 02, 2025 am 01:19 AM

本質(zhì)的な応答性のあるグリッドレイアウトを作成するために、COREメソッドはCSSGridのRepeat(auto-fit、minmax())モードを使用することです。 1.グリッドテンプレートコラムの設(shè)定:繰り返し(Auto-Fit、MinMax(200PX、1FR))繰り返して、ブラウザが列の數(shù)を自動(dòng)的に調(diào)整し、各列の最小幅と最大幅を制限します。 2。ギャップを使用してグリッド間隔を制御します。 3.コンテナは、幅などの相対ユニットに設(shè)定する必要があります。100%、およびボックスサイズを使用してください。幅の計(jì)算エラーを回避し、マージンで中央に配置する必要があります。 4.オプションで、行の高さとコンテンツのアライメントを設(shè)定して、行などの視覚的な一貫性を向上させます

See all articles