2013-04-21 2 views
23

Ich benutze Bower, um Abhängigkeiten für mein Projekt zu installieren (ich weiß, dass es Yeoman gibt, aber ich benutze Bower). Nachdem ich die component.json Datei eingerichtet habe, installiert sie bei der Bower-Installation Abhängigkeiten, um das Verzeichnis zu korrigieren, aber es installiert auch viele andere unnötige Dateien. Jetzt möchte ich bower, um die spezifische Datei zu installieren, die zum Beispiel jquery.js, backbone.js and underscore.js und nichts anderes benötigt wird. Wie kann ich es mit der Laube machen?bower installiert mehrere Dateien. Warum und wie kann ich es ändern?

+6

Ich bin damit einverstanden, ich will nicht meine Produktionsumgebung mit unnötigen Dateien übersät. – wbeange

Antwort

5

Es liegt an den Paketautoren anzugeben, welche Dateien aus dem Paket mit der ignore-Eigenschaft auszuschließen sind. Nehmen Sie jetzt einfach die gewünschten Dateien in Ihre App/Website auf und ignorieren Sie den Rest.

7

Sie können bower-installer überprüfen.

bower list --path normalerweise über die Haupt-js-Datei im Paket, die bower-installer bequem erfasst und exportiert nur diese Dateien in Ihre Asset-Verzeichnisse. Sie können dann stattdessen dieses Verzeichnis verwenden und das Verzeichnis bower_components ignorieren.

18

Ich vor kurzem wrote up a possible solution zu diesem Problem und werde die wichtigsten Punkte unten hervorheben.

Wenn Sie wissen, dass Sie eine bestimmte Datei aus einem bestimmten Paket möchten, ist es einfach genug, bower zu sagen, dass nur diese Datei zu erfassen ist. Zum Beispiel mit ist die einzige Datei, die mir wichtig ist, nun, . Anstatt also Typisierung:

bower install --save normalize-css 

kann ich genauer sein und Bower sagt, nur die css Datei herunterladen:

bower install --save https://raw.github.com/necolas/normalize.css/master/normalize.css 

Das ist natürlich, immer die neueste Version von normalisieren aus dem Repository holen Master-Zweig, wenn bower install für Ihr Projekt aufgerufen wird. Wenn jedoch möchte ich sicherstellen, dass ich die 3.0.0 Version normalisieren immer, dann kann ich durch die releases/Geschichte graben die entsprechende URL und Viola zu finden:

bower install --save http://necolas.github.io/normalize.css/3.0.0/normalize.css 
+12

Vielleicht stört das niemanden sonst - aber dessen Idee war es, Bower große Teile von GitHub auf Ihrem Server installieren zu lassen, von denen die meisten nie vom Entwickler berührt werden, und keine saubere API zur Installation von reinen Produktionsdateien bereitzustellen ? Stellen Sie mindestens die Option zur Verfügung. – tfmontague

+1

@tfmontague Bower macht keine Annahmen darüber, was Sie herunterladen möchten. Es liegt an jedem Paketentwickler, einen sauberen Zweig ohne all die Flusen zu erstellen. Leider lassen viele Entwickler all die zusätzlichen Sachen, die in dem Zweig liegen, den Bower auszieht. – jbranchaud

+2

Guter Punkt, aber Sie sollten Probe mit jQuery geben, die offensichtlich nicht funktioniert. Wie soll die vollständige URL bekannt sein, wenn der Zweck der Verwendung von Bower in erster Linie darin besteht, einen schnellen Download zu erstellen, kann ich auch "Save As" von der direkten vollständigen URL in meinem Browser verwenden. Offfhh ... Technologie manchmal – Shina

Verwandte Themen