Eintrag
Lass mich anfangen. Wir hatten ein monolithisches Frontend mit einem großen Erbe. Services lebten in denselben Dateien wie die Komponenten. Alles wurde mit dem Slogan an der Fassade verwechselt: "Lassen Sie alles zur Hand sein - es ist einfacher zu finden, was Sie brauchen." Und es spielt keine Rolle, dass die Dateilänge 200+, 300+, 500+ oder noch mehr Codezeilen beträgt.
Zweck
Machen Sie alles lesbarer, kleiner und schneller.
Implementierung
Das Prinzip der alleinigen Verantwortung besteht darin, alles Mögliche in Akten und die goldene Kugel zu trennen. Wenn wir eine Komponente und reine Funktionen in einer Datei haben, werden wir sie trennen.
Mit dem Aufkommen von ES6 + wurde es möglich, Import ... aus der Syntax zu verwenden - dies ist eine großartige Funktion, da wir auch Export ... aus verwenden können .
Refactoring
Stellen Sie sich eine Datei mit dieser Struktur vor:
Wir können diesen Code folgendermaßen in Dateien aufteilen:
Struktur:
utils multiply.js sum.js calculateSomethingSpecial.js
und Dateien:
Jetzt können wir die Funktionen einzeln importieren. Aber mit zusätzlichen Zeilen und diesen langen Namen bei Importen sieht es immer noch schrecklich aus.
Aber dafür haben wir eine wunderbare Funktion, die mit dem Aufkommen der neuen JS-Syntax erschien, die als Reexport (Reexport) bezeichnet wird. In dem Ordner müssen wir eine index.js-Datei erstellen, um alle unsere Funktionen zu kombinieren. Und jetzt können wir unseren Code folgendermaßen umschreiben:
Etwas podshamanim App.js:
Fertig.
Testen.
Lassen Sie uns nun überprüfen, wie unsere Webpack-Kompilierungen für die Produktion erstellt werden. Erstellen wir eine kleine React-Anwendung, um zu testen, wie sie funktioniert. Wir werden prüfen, ob wir nur das herunterladen, was wir benötigen, oder alles, was in index.js angegeben ist, aus dem Ordner utils .
Anwendung:
Produktionsversion der Anwendung:
Wie Sie oben sehen können, haben wir nur die Summenfunktion von utils geladen.
Lassen Sie uns noch einmal überprüfen, und dieses Mal werden wir multiplizieren .
Anwendung:
Produktionsversion der Anwendung:
Hier sehen wir nicht einmal die Funktionen im Code, da Webpack unseren Wert bereits vor der Bereitstellung kompiliert hat.
Abschließender Test
Lassen Sie uns also unseren letzten Test durchführen und alle Funktionen gleichzeitig verwenden, um zu sehen, ob alles funktioniert.
Anwendung:
Produktionsversion der Anwendung:
Großartig! Alles funktioniert wie erwartet. Sie können jeden Schritt versuchen, indem Sie einfach den Link zu Codesandbox verwenden , und Sie können jederzeit direkt von dort aus Netlify bereitstellen .
Fazit
Verwenden Sie die Aufteilung des Codes in kleinere Teile und versuchen Sie, zu komplexe Dateien, Funktionen und Komponenten zu entfernen. Sie helfen sowohl der Zukunft selbst als auch Ihrem Team. Kleinere Dateien sind schneller zu lesen, leichter zu verstehen, einfacher zu warten, schneller zu kompilieren, einfacher zu zwischenspeichern, schneller herunterzuladen usw.
Danke fürs Lesen! Sauberer Code und üppiges Refactoring!