wake-up-neo.net

Konfigurieren Sie die Bower so, dass nur der dist-Ordner installiert wird

Ich versuche, Tools wie Bower/Grunt/Requirement zu erlernen, um den Entwicklungsprozess für meine Website zu beschleunigen und meinen Code modularer/effizienter zu machen. Ich verfolge gerade dieses Tutorial . Wie kann man Bower nur dazu bringen, den dist-Ordner für meine Abhängigkeiten (Setup in meiner komponente.json-Datei) anstelle des gesamten Git-Repositorys zu installieren?

24
Neve12ende12

Sie suchen nach der ignore - Eigenschaft in bower.json: https://github.com/bower/bower.json-spec

Der Entwickler des Moduls kann das Attribut ignore verwenden, um Dateien auszuschließen, wenn das Modul über Bower heruntergeladen und installiert wird.

Wenn Sie das Modul entwickeln, können Sie das Attribut ignore verwenden, um alles außer dem Ordner dist auszuschließen.

Wenn Sie nicht der Entwickler des Moduls sind, können Sie nicht viel tun, sondern Sie erhalten alles, was der Entwickler des Moduls für wichtig hält. In den meisten Fällen ist dies kein Problem.

Hier ist eine typische Konfiguration für das Attribut ignore:

{
  "ignore": [
    "**/.*",
    "node_modules",
    "bower_components",
    "test",
    "package.json",
    "src"
  ]
}
21
nwinkler

Bower bietet dafür keine Option. Meistens weil sie sich geweigert haben .

Alles, was uns bleibt, sind harte Wege, damit umzugehen, wie grunt-wiredep , was das Problem nicht im strengen Sinne löst.

Viel Glück!

7
Ariel

Aus der Dokumentation von Bower api scheint es nichts zu sagen "Installiere nur den dist-Ordner". 

Da Sie Grunt bereits verwenden, können Sie wahrscheinlich eine Aufgabe erstellen, die nach bower install ausgeführt wird, indem Sie grunt-contrib-clean verwenden, um unerwünschte Dateien und Ordner aus dem bower_components-Ordner zu entfernen.

So etwas sollte alles aus dem bower_components-Ordner mit Ausnahme von dist-Ordnern entfernen:

clean : {
    dist : ['bower_components/*/*', '!bower_components/*/dist']
}

Während ich dies untersuchte, fand ich auch grunt-bower-task , die genau das zu tun scheint. Der einzige Nachteil, den ich bei dieser Methode sehe, ist, dass Sie die Datei bower.json zuerst von Hand erstellen und dann die Grunt-Aufgabe ausführen müssen.

6
Ben

Dies beantwortet Ihre Frage nicht direkt, kann jedoch bei dem helfen, was Sie erreichen wollen. 

Es gibt zwei Plugins: grunt-wiredep und grunt-wiredep-copy , die Ihnen beim Verwalten Ihrer Bower-Abhängigkeiten helfen können. Diese fügen die Abhängigkeiten automatisch zu Ihrem HTML-Code hinzu und können dann die erforderlichen minimierten Abhängigkeiten übernehmen und in Ihren dist-Ordner kopieren. 

Ich habe jedoch Probleme mit einigen Aspekten dieser Problematik: Wie verwalte ich Abhängigkeiten bei der Entwicklung und Bereitstellung mit Grunt und einem Projektordner aus der Ferne?

0
mummybot