Detaillierte Beschreibung des komponentenbasierten Front-End-Entwicklungsprozesses

Detaillierte Beschreibung des komponentenbasierten Front-End-Entwicklungsprozesses
Hintergrund <br />Studenten, die am Front-End arbeiten, wissen, dass es unübersichtlich wird, wenn zu viele Seiten vorhanden sind. Deshalb müssen wir den Entwicklungsprozess vereinheitlichen. Die Qualität des Entwicklungsprozesses wirkt sich direkt auf die Effizienz der Seitenentwicklung und indirekt auf die Spieldauer aus.

Ziel des Entwicklungsprozesses <br />Seiten können schnell fertiggestellt werden.
Durch die Komponentenbildung wird die Wiederverwendung von Code sichergestellt, um Doppelarbeit zu vermeiden.
Stellen Sie sicher, dass die Seite nach der Online-Schaltung effizient ausgeführt werden kann.

Umfang des Entwicklungsprozesses <br />Standards zur Dateispeicherung.
Die Organisationsstruktur und Codierungsstandards des Codes.
Veröffentlichungsstrategie.
Die erforderlichen Entwicklungstools zur Unterstützung des gesamten Prozesses.
Jedes Team verfügt über eigene Entwicklungsvorgaben. Tatsächlich gibt es nicht die beste Prozessspezifikation, sondern nur die am besten geeignete. Im Folgenden wird eine Reihe allgemeiner Entwicklungsprozessspezifikationen vorgestellt, die auf der Grundlage der Entwicklungsprozesse mehrerer Teams zusammengefasst und optimiert werden.

Ordnerspezifikation <br />Angenommen, der Projektordner ist p/. Dieser Ordner enthält:
p/assets/ speichert Entwicklungstools
p/dev/ speichert Projektdateien im Entwicklungsstatus
p/dpl/ speichert die gemeinsame Komponentenbibliothek des Projekts
p/release/ speichert freigegebene Projektdateien (die Dateien hier sind alle komprimiert)
Die Struktur in p/dev/ ist :
p/dev/website1/public/ Von der gesamten Site gemeinsam genutzte Projekte (von der gesamten Site gemeinsam genutzte Dateien speichern)
p/dev/website1/project1/ Projekt 1
p/dev/website1/project2/ Projekt 2
....
Die Struktur innerhalb jedes Projekts ist:
p/dev/website1/projekt1/seite1.html
p/dev/website1/project1/assets/page1.js
/dev/website1/project1/assets/page1.css
p/dev/website1/projekt1/assets/bilder/
p/dev/website1/project1/include/page1.inc
Die Struktur innerhalb von p/dpl/ ist :
p/dpl/system/ System-JS-Modul
p/dpl/controls/ UI-Modul
p/dpl/widgets/ Geschäftskomponenten Die Struktur der einzelnen Ordner ist wie folgt:
p/dpl/system/kategorie1/komponente1.html
p/dpl/system/category1/assets/component1.js
p/dpl/system/kategorie1/assets/komponente1.css
p/dpl/system/kategorie1/assets/bilder/
Die Struktur innerhalb von p/release/ ist:
Abhängig von der Online-Dateispezifikation kann es auch dasselbe wie p/dev/ sein.

Komponentenbasierte Entwicklungsimplementierung
1. Von der gesamten Site verwendetes JS und CSS
Das von der gesamten Site verwendete JS und CSS werden durch Auswahl einiger Komponenten aus p/dpl/ mithilfe von Tools synthetisiert. Fügen Sie es in p/dev/website1/public/assets/common.js (oder .css) ein.
2. JS und CSS, die nicht von der gesamten Site gemeinsam genutzt werden
Mit dem folgenden Code kann eine Komponente in eine Webseite geladen werden:
?using("System.Kategorie1.Komponente1");
var comp1 = neue Komponente1();
Unter diesen wird System.Category1.Component1 auf p/dpl/system/category1/assets/component1.js (oder .css) abgebildet.
Im Entwicklungszustand werden Komponenten durch die Verwendung synchron geladen. Nach der Veröffentlichung der Seite wird using durch den Quellcode der entsprechenden Komponente ersetzt, ohne dass ein dynamisches Laden erforderlich ist.
3. Asynchrones Laden von JS und CSS
Der Prozess selbst bietet nicht die Funktion zum asynchronen Laden von Komponenten. Im Projekt kann jeder Modullader eines Drittanbieters verwendet werden, um das asynchrone Laden zu implementieren.
4. Wiederverwendung von HTML <br />Schreiben Sie include("include/topbar.inc") in die HTML-Datei, um das entsprechende HTML-Fragment in die Seite einzubetten.

Seitenveröffentlichung <br />Bei der Seitenveröffentlichung geht es hauptsächlich um Folgendes:
Inline-Includes und Usings usw. zur Reduzierung der Seitenaufrufe.
Komprimieren Sie JS und CSS.
Ändern Sie den Dateispeicherort erneut, um ihn den tatsächlichen Projektanforderungen anzupassen (Sie müssen beispielsweise JS und CSS extrahieren und HTML filtern).

<<:  Beispielcode zur Implementierung eines reinen CSS-Popup-Menüs mit Transform

>>:  So stellen Sie Kafka in Docker bereit

Artikel empfehlen

So installieren und deinstallieren Sie open-vswitch unter Linux

1. Kompilieren und installieren Sie OVS aus dem Q...

Detaillierter Prozess zur Implementierung des 2048-Minispiels im WeChat-Applet

Rendern Beispielcode Heute werden wir das WeChat-...

Attribute im Vue V-For-Loop-Objekt

Inhaltsverzeichnis 1. Werte innerhalb von Schleif...

So verwenden Sie den regulären Matching-Selektor für CSS-Attributwerte (Tipps)

Es gibt drei Typen von regulären Matching-Selekto...

Nginx-Inhaltscache und allgemeine Parameterkonfigurationsdetails

Anwendungsszenarien: Die Seiten des Projekts müss...

Das native VIDEO-Tag der HTML-Seite verbirgt die Download-Button-Funktion

Beim Schreiben eines Webprojekts stieß ich auf ei...

So binden Sie einen Docker-Container an eine externe IP und einen externen Port

Docker ermöglicht die Bereitstellung von Netzwerk...

Warum DOCTYPE HTML verwenden?

Sie wissen, dass der Browser ohne diese Option bei...

Detaillierte Erläuterung der Dateisystemformate der EXT-Serie in Linux

Linux-Dateisystem In der Abbildung oben sind herk...

TinyEditor ist ein einfacher und benutzerfreundlicher HTML-WYSIWYG-Editor

Vor einigen Tagen habe ich Ihnen einen inländisch...

Quickjs kapselt JavaScript-Sandbox-Details

Inhaltsverzeichnis 1. Szenario 2. Vereinfachen Si...

So verwenden Sie das Videowiedergabe-Plugin DPlayer.js

Das Videoplayer-Plugin DPlayer.js ist einfach zu ...

Führen Sie die folgenden Schritte aus, damit Docker Images abrufen kann

1. Docker Pull zieht das Image Wenn Sie zum Abruf...