2017-09-06 3 views
2

Ich muss Schluck in Symfony in einer Legacy-Anwendung implementieren. Das Legacy < -> symfony Anwendungsteil funktioniert, aber ich bin ein bisschen auf den Schluck stecken < -> symfony Teil. Der Ordner "web" heißt in unserer Anwendung html. In diesem Ordner habe ich einen Komponentenordner für libs wie bootstrap, jquery, ... und js, css, image, ... Ordner. In unserem js-Ordner haben wir einen Konfigurationsordner, der Standardkonfigurationen für einige Bibliotheken (z. B. Datentabellen) und einen Erweiterungsordner enthält, der Erweiterungen (z. B. jQuery-Erweiterungen) neben einigen selbst geschriebenen js-Dateien enthält. Ich muss diese Konfigurations-/Erweiterungsdateien mit den js lib-Dateien kombinieren.Schluck (& ​​Symfony): Arbeiten mit Assets

Meine Idee war, ein JSON-Objekt (namens Module) mit allen Assets zu erstellen. Dann würde ich dieses Modulobjekt durchlaufen und die Schluckaufgaben bei Bedarf aufrufen.

zB:

`var modules = { 
    bootstrap : { 
     css: ['/html/components/bootstrap/css/bootstrap.min.css, html/css/layout.css'], 
     fonts: ['html/components/bootstrap/fonts/*'], 
     js: ['/html/components/bootstrap/js/bootstrap.min.js'] 
    }, ... 
};` 

für Bootstrap, würde ich einen großen Schluck Aufgabe nennen sich die CSS-Dateien minify und kombinieren und die URLs und die Importe zu aktualisieren, eine Aufgabe, die Schriften in den HTML-Code kopieren/Fonts-Ordner und ein Aufgabe zum Kopieren der JS-Datei nach html/js

Ist das ein guter Ansatz? Oder gibt es eine bessere Möglichkeit, Assets in Symfony zu verwalten? (Ich weiß, dass Sie das Assetic Bundle haben, aber wir verwenden es6 manchmal, also müssen wir einige js Dateien mit babel übersetzen, und das ist nicht möglich (so weit ich weiß, mit Assetic)

Antwort

0

ich werde meine eigene Frage zu beantworten, wie es andere Menschen helfen könnte.

Symfony ‚Zugabe‘ für die Asset Management eingeführt hat. es gibt ein chapter about encore. Encore verwendet webpack, die ein bekanntes Modul Bündler ist.

Verwandte Themen