Jak zmienić domyślny folder komponentów altany?


475

Robię nowy projekt, który używa altany z Twittera. Stworzyłem component.jsonaby zachować całą moją zależność jak jquery. Następnie uruchamiam, bower installktóry instaluje wszystko w folderze o nazwie components. Ale muszę zainstalować komponenty w innym folderze, np public/components.

Próbowałem edytować mój komponent.json w:

{
  "name": "test",
  "version": "1.0.0",
  "directory": "public/",
  "dependencies": {
    "jquery": "*"
  }
}

lub:

{
  "name": "test",
  "version": "1.0.0",
  "componentsDirectory": "public/",
  "dependencies": {
    "jquery": "*"
  }
}

jak pokazano na https://github.com/twitter/bower/pull/94, ale to nie działa.

Odpowiedzi:


930

Utwórz plik konfiguracyjny Bower.bowerrc w katalogu głównym projektu (w przeciwieństwie do katalogu domowego) z zawartością:

{
  "directory" : "public/components"
}

Uruchom bower installponownie.


4
Dziennik zmian Widzę tylko The value of the json property from .bowerrc is no longer usedi myślę, że wszystko jest w porządku z "directory"własnością. Dobrze? github.com/bower/bower/blob/master/CHANGELOG.md
Sergey Kishenin

11
To mi nie działa. Działa w .bowerrc, ale nie bower.json. To wydaje się być tak podstawową cechą ...
elliottregan

148
Jestem ciekawy, dlaczego nie zostałoby to umieszczone w pliku bower.json. Zwłaszcza jeśli jest to ustawienie dla każdego projektu.
Hayden

8
W oparciu o dokumenty, musi być w .bowerrc, a nie bower.json. Dziwne ... bower.io/#custom-install-directory
joemfb

20
W systemie Windows, aby utworzyć plik zaczynający się od „.”, Po prostu utwórz plik z końcowym „.”. Innymi słowy, po prostu nazwij to „.bowerrc”.
PeteK68

76

Oprócz edycji w .bowerrccelu ustawienia domyślnej ścieżki instalacji, możesz także ustawić niestandardowe ścieżki instalacji dla różnych typów plików.

Istnieje pakiet węzłów o nazwie bower-installer, który udostępnia jedno polecenie do zarządzania alternatywnymi ścieżkami instalacji.

biegać npm install -g bower-installer

Skonfiguruj plik bower.json

{
  "name" : "test",
  "version": "0.1",
  "dependencies" : {
    "jquery-ui" : "latest"
  },
  "install" : {
    "path" : {
      "css": "src/css",
      "js": "src/js"
    },
    "sources" : {
      "jquery-ui" : [
        "components/jquery-ui/ui/jquery-ui.custom.js",
        "components/jquery-ui/themes/start/jquery-ui.css"
      ]
    }
  }
}

Uruchom następujące polecenie: bower-installer

Spowoduje to zainstalowanie components/jquery-ui/themes/start/jquery-ui.cssna ./src/css, etc


4
Wygląda to obiecująco, ale bower_componentskatalog jest nadal tworzony i zapełniany. :(
Ben

jaka wersja altany?
lfender6445

wydaje się być naturą pakietu. możesz otworzyć problem tutaj github.com/blittle/bower-installer/issues lub napisać skrypt bash, aby usunąć instalację po instalacji katalogu.
lfender6445,

1
Myślę, że nie ma sensu. Nie chcę pakietu, który nadal pobiera pełne repozytorium git i zależności, a następnie po prostu kopiuje dla mnie określone pliki ... Sam mogę nacisnąć Ctrl + C. Mam nadzieję, że pobierze dla mnie tylko określone pliki.
Alendorff,

tak, słyszę cię. w tym przypadku po prostu .bowerrc i wskazuję public / bower lub public / vendor, aby projekt był prosty.
lfender6445

61

Miałem ten sam problem w systemie Windows 10. To naprawiło mój problem

  1. Usuń bower_componentsw folderze głównym
  2. Utwórz .bowerrcplik w katalogu głównym
  3. W pliku wpisz ten kod {"directory" : "public/bower_components"}
  4. Uruchom a bower install

Powinieneś teraz zobaczyć folder bower_components w swoim folderze publicznym


23

Coś, o czym warto wspomnieć ...

Jak zauważono powyżej przez innych autorów, przy użyciu .bowerrcpliku z JSON

{ "directory": "some/path" }

jest konieczne - JEDNAK możesz napotkać problem w systemie Windows podczas tworzenia tego pliku. Jeśli system Windows wyświetli komunikat z prośbą o dodanie „ nazwy pliku ”, wystarczy użyć edytora tekstu / IDE, takiego jak Notepad ++.

Dodaj JSON do nienazwanego pliku, zapisz go jako .bowerrc - możesz już iść!

Prawdopodobnie łatwe założenie, ale mam nadzieję, że uratuje to innych niepotrzebny ból głowy :)


18
W systemie Windows, aby utworzyć plik zaczynający się od „.”, Po prostu utwórz plik z końcowym „.”. Innymi słowy, po prostu nazwij to „.bowerrc”.
PeteK68

możesz to zrobić również za pomocą git bash, po prostu wpisz:echo >> .bowerrc
Leandro RR

7

Spróbuj umieścić components.jsonplik w publickatalogu aplikacji, a nie w katalogu głównym, a następnie uruchom ponownie bower install... wypróbuj to w katalogu głównym aplikacji:

cp components.json public
cd public
bower install

1
tak, to może być sposób, czy istnieje uzasadniony sposób, aby to zrobić? ale nadal liczę to jako odpowiedź.
Adam Ramadhan,

2
możesz napisać skrypt bash, bower.shaby dodać katalog, w którym chcesz zainstalować, np. `public-components.json ', a następnie wygeneruje powyższe polecenia.
hagope

2
Obie odpowiedzi brzmią bardzo hacky, zdecydowanie nie jest pożądane
Jay

-3

Cześć, mam ten sam problem i rozwiązuję ten sposób.

użytkownik systemu Windows i plik cant'create .bowerrc.

w cmd przejdź do dowolnego folderu

zainstaluj wszystkie pakiety, które zawierają na przykład plik .bowerrc

bower install angular-local-storage

ta wtyczka zawiera plik .bowerrc. skopiuj to i przejdź do swojego projektu i wklej ten plik.

aw Visual Studio - eksplorator rozwiązań - pokaż wszystkie pliki i dołącz projekt .bowerrc

rozwiązuję w ten sposób :)


możesz użyć Cygwinlub Cmderterminalu, aby utworzyć .bowerrcplik.
Francis.TM

4
Po prostu utwórz plik o dowolnej nazwie, a następnie otwórz PowerShell lub wiersz polecenia i zmień jego nazwę.
TrueWill

Możesz utworzyć plik kropkowy w systemie Windows, podając nazwę pliku jako „.name”. - wciąż niewiele osób wie o tym po tylu latach dostępności :)
Alex Paven
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.