Gulpの実践構成(2)~中小規模プロジェクト
前の記事の gulp 設定は非常に簡単で、主にデモの表示とデバッグを目的としており、この記事では圧縮、マージ、タイムスタンプなどについて比較的詳しく説明します。
インターネット環境が比較的整っている都市では、複数の人の協力が必要な大規模プロジェクトはすべてモジュール化を使用する必要があります (ここでは主に commonjs と ES6 モジュール システムを指します。以前の require.js や sea.js ではありません)。また、コードは、単にマージするのではなく、分離して挿入する方法に重点を置きます。
しかし、多くの中小企業では、開発モデルやテクノロジーがまだ比較的伝統的であるか、小規模プロジェクトによっては最先端のテクノロジーをまったく使用する必要がありません。
つまり、この構成は主にこのような小規模および中規模のプロジェクト向けです。
1. 必要なツールとバージョン
パッケージ管理ツール:yarn v0.24.5
自動ビルドツール: gulp v4.0
2.ツールのインストール
糸でグローバル gulpjs/gulp#4.0 を追加
3. 開発環境の構成
gulp-pug このプラグインは、以前の jade テンプレートである pug テンプレートをコンパイルするために使用されます。pug テンプレートは非常に強力なフロントエンドおよびバックエンドのユニバーサル テンプレート エンジンであり、学習も非常に簡単です。具体的な使い方については、私の他の記事を読んでください。Pug チュートリアルの記事 - Express+mongodb+pug に基づくブログ システム - Pug の記事。
gulp がタスクを監視しているときに、どこかのリンクで問題が発生すると、gulp が中断され、gulp タスクを再起動する必要があることは誰もが知っています。これは非常に面倒なことです。ここでは、gulp-notify と gulp-plumber の 2 つのプラグインを使用して、gulp タスクの中断を回避できます。
4. 本番環境の構成
実稼働環境では、コードが更新されて新しいバージョンがリリースされるたびに、ユーザークライアントが更新されたコードをダウンロードできるように、コードを圧縮してマージする必要があります。また、CSS にタイムスタンプを付ける必要もあります。およびJSファイル。
gulp-rev は MD5 でファイルをスタンプするために特別に設計されたプラグインです。MD5 スタンプを実行した後は、当然 HTML ファイル内の参照も変更する必要があります。 MD5 がスタンプされたファイルを置き換えるために、gulp-rev-collector プラグインも必要です。
gulp-imgbase64 では、HTML ファイル内のどの img 要素を Base64 に変換するかを指定できます。さらにカスタマイズされた変換が必要な場合は、このプラグインを使用できます。
5.プロジェクトのディレクトリ構造
XXX——
— ディスト
| — html
| — css
| — img
| — js
| — リブ
| — 開発
| — html
| — css
| — img
| — js
| — リブ
| ソース
| パグ
— コンポーネント
— ページ
— レイアウト.pug
| — 少ない
— ページ
| — main.less
| — リセット.レス
— common.less
| — feature.less
| — img
| — js
| — リブ
src フォルダーにはメインのビジネス コードが含まれており、長期的なメンテナンスが必要なコードが含まれています。
dev フォルダーは、開発中に gulp がコードを生成する場所です。
dist フォルダーは、gulp がビルド中にコードを生成する場所です。
この構成では、他の多くの人が行っていたように、開発中に gulp を通じて生成されたコードを src フォルダーに配置しませんでした。これは、参照時に多くの問題が発生し、開発コード環境と実稼働コード環境をすべて分離しておくと問題が発生する可能性があるためです。 src フォルダーは、煩雑なコードを含まずに純粋な状態に保ちます。
そのため、gulp によって処理されていない一部のファイルについては、それらを dev または dist フォルダー内の対応する場所に直接コピーします。
dist フォルダーは各 gulp タスクがコードを生成する前にクリアされるため、dist フォルダーの内容を気にする必要はありません。
dev フォルダーには多くの冗長なファイルが含まれている可能性がありますが、ファイルが削除されたり上書きされたりしても影響を受けることを心配する必要はありません。必要なのは、src フォルダー内のファイルが存在することを確認することだけです。は正しい。
以上がGulpの実践構成(2)~中小規模プロジェクトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











PyCharm 初心者ガイド: プロジェクトを削除するための実践的なヒント PyCharm は強力な Python 統合開発環境 (IDE) であり、プロジェクトを開発するときに、プロジェクトまたはプロジェクト内のファイルを削除する必要がある場合があります。この記事では、PyCharm でプロジェクトを削除するための実践的なテクニックを紹介し、初心者がよりよく理解して適用できるように具体的なコード例を示します。 1. プロジェクトの削除 プロジェクトの削除は、プロジェクト フォルダー全体を削除することを意味します。これは、プロジェクトをクリーンアップまたは再構築する必要がある場合に非常に便利です。 PyCharmで削除する

全角の英字を半角に変換する実践的なヒント. 現代の生活において私たちは英語の文字に触れる機会が多く、パソコンや携帯電話などを使用する際に英語の文字を入力する必要が多くなります。ただし、場合によっては全角の英字が登場するため、半角形式を使用する必要があります。では、全角の英字を半角に変換するにはどうすればよいでしょうか?ここでは、いくつかの実践的なヒントを紹介します。まず、全角英数字とはインプットメソッド内で全角の位置を占める文字のことを指しますが、半角英数字は全角の位置を占めます。

Django フレームワークをゼロから学ぶ: 実践的なチュートリアルと例 Django は、Web サイト開発プロセスを簡素化する人気のある Python Web アプリケーション フレームワークです。開発者が効率的でスケーラブルで安全な Web アプリケーションを構築できるようにする強力なツールとライブラリのセットを提供します。初心者にとって、Django を学習するのは難しいかもしれませんが、いくつかの実用的なチュートリアルと例を通じて、すぐに使い始めて、このフレームワークの中心的な概念と使用法を理解することができます。この記事では、Django ボックスについて段階的に学習します。

yum は一般的に使用されるソフトウェア パッケージ管理ツールであり、gdb は強力なデバッグ ツールです。以下にその使用法チュートリアルを示します。 yum 使用法チュートリアル: ソフトウェア パッケージのインストール: ソフトウェア パッケージをインストールするには、yuminstall コマンドを使用します。たとえば、Apache Web サーバーをインストールするには、yuminstallhttpd を実行できます。ソフトウェア パッケージのアップグレード: yumupdate コマンドを使用して、インストールされているソフトウェア パッケージをアップグレードします。たとえば、yumupdate を実行すると、システム内のすべてのパッケージがアップグレードされます。ソフトウェア パッケージを削除する: ソフトウェア パッケージを削除するには、yumremove コマンドを使用します。たとえば、Apache Web サーバーを削除するには、yumremovehttpd を実行します。パッケージの検索: yumsear を使用します。

Linux サーバーの帯域幅とネットワーク使用量を表示するには、次のコマンドとツールを使用できます。 ifconfig コマンド: ifconfig コマンドは、帯域幅やネットワーク使用量などのネットワーク インターフェイス情報の表示と構成に使用されます。すべてのネットワーク インターフェイスの情報を表示するには、次のコマンドを使用します。 ifconfig このコマンドは、送受信したパケット数やネットワーク使用状況など、各ネットワーク インターフェイスの詳細情報を表示します。 ip コマンド: ip コマンドは、ネットワーク インターフェイスやルーティング テーブルなどの情報を表示および設定するためのより強力な代替手段です。すべてのネットワーク インターフェイスの情報を表示するには、次のコマンドを使用します。 ip-slink このコマンドは、送受信されたパケット数やネットワーク使用状況など、各ネットワーク インターフェイスの統計を表示します。

Laravel Elixir は、Gulp をベースにした人気のフロントエンド自動化ツール セットで、これまで手作業が必要だった多くのタスクを簡素化します。しかし、Laravel Elixir の洗練された API 設計は、開発者が Gulp の使用法をまったく理解する必要がないことを意味するものではありません。逆に、Gulp の使い方を理解することで、Laravel Elixir の動作原理をより深く理解し、開発効率を向上させることができます。この記事では、Laravel Elixir フレームワークで Gulp を使用する方法を紹介します。

Terraform は、構築しているインフラストラクチャの青写真として機能する宣言型言語です。 OpenStack 実稼働環境とホーム ラボをしばらく使用した後、管理者とテナントの両方の観点からワークロードのデプロイと管理の重要性を確認しました。 Terraform は、インフラストラクチャをコードとして管理し、宣言型言語を通じてインフラストラクチャのブループリントを作成するためのオープンソース ソフトウェア ツールです。 Git 管理をサポートしており、GitOps に適しています。この記事では、Terraform を使用して OpenStack クラスターを管理する基本を紹介します。 Terraform を使用して OpenStack デモ プロジェクトを再作成しました。 Terraform をインストールするには、CentOS を出発点として使用しました

コマンド ライン ツールを使用する: コマンド ls/dev を使用して、システム内のすべてのシリアル デバイスを一覧表示できます。通常、シリアル デバイスの名前は ttyS または ttyUSB で始まります。 dmesg|greptty コマンドを使用すると、システムの起動時にシリアル デバイス情報を表示できます。 minicom、PuTTY などのシリアル ポート監視ツールを使用して、データ テスト用にシリアル ポート デバイスを開くことができます。データの送受信が正常に行われると、シリアル ポートの正常な動作ステータスを確認できます。専用のシリアル ポート検出ツール (SerialPortMonitor、RealTerm など) を使用して、テストとデバッグのためにシステム内のシリアル ポート デバイスをスキャンできます。
