#frontend #webdev #gulp #javascript
Mam dosyć dziwny problem z gulpem i browser-sync, to mój gulpfile: http://wklej.org/id/1830137/
Edytuje sobie pliki jade, za każdym razem po edycji dowolnego z nich widzę w logach
Problem pojawia się gdy stworzę więcej niż 5 plików jade, wtedy całość się jakby dusi, a każde odświeżenie przeglądarki nie pokazuje aktualnego stanu, tylko o zapis wcześniej, muszę wprowadzić jeszcze jakąś inną
Mam dosyć dziwny problem z gulpem i browser-sync, to mój gulpfile: http://wklej.org/id/1830137/
Edytuje sobie pliki jade, za każdym razem po edycji dowolnego z nich widzę w logach
[BS] 5 files changed (file1.html, file2.html, file3.html, file4.html, file5.html)
Problem pojawia się gdy stworzę więcej niż 5 plików jade, wtedy całość się jakby dusi, a każde odświeżenie przeglądarki nie pokazuje aktualnego stanu, tylko o zapis wcześniej, muszę wprowadzić jeszcze jakąś inną
- 0
@niezielony: brzmi jak race condition. Pomysł z timeout-em cienki jak dupa węża. Ja radziłbym refactoring procesu produkowania plików HTML tak, żeby przebudowie ulegały tylko te faktycznie zmienione.
- 1
@niezielony: Gulp.watch umie powiedzieć Ci callback-iem lub event-em który plik uległ zmianie. Odczytaj to i uruchom Jade-a tylko na tym pliku. Raczej nie będziesz potrzebował gulp-jade, tylko samego jade.
- 1
@niezielony: gulp-jade to takie opakowanie jade, które umożliwia wpięcie budowanie szablonów w gulp-owy stream. A kiedy napiszesz watch-a, podepniesz mu callback, dostaniesz konkretną ścieżkę pliku, to nie potrzebujesz już stream-u, tylko zwyczajnego zbudowania jednego pliku przez jade. A do tego służy jade ;)
- 0
@niezielony: wygląda lepiej. Powtarzające się części, czyli to co skopiowałeś, możesz wyrzucić do jakiejś funkcji z parametrem src np.
Testowałeś to i działa? Pytam bo mam wątpliwość co do gulp.dest. W przypadku podania do src glob-a ogólnego ("./jade/*.jade") strumień zawiera informacje o relatywnej ścieżce złapanych plików. Chyba nie jest tak kiedy podajesz do src konkretną ścieżkę (event.path). Wydaje mi się, że pliki wynikowe z watch-a wylądują Ci bezpośrednio w "./dist/" zamiast
Testowałeś to i działa? Pytam bo mam wątpliwość co do gulp.dest. W przypadku podania do src glob-a ogólnego ("./jade/*.jade") strumień zawiera informacje o relatywnej ścieżce złapanych plików. Chyba nie jest tak kiedy podajesz do src konkretną ścieżkę (event.path). Wydaje mi się, że pliki wynikowe z watch-a wylądują Ci bezpośrednio w "./dist/" zamiast
- 0
@niezielony: spróbowałbym z path.relative, czyli w miejscu event.path podaj path.relative('.', path.relative). Nie zapomnij o require("path");. Daj znać.
- 0
@niezielony: słusznie, bo napisałem bzdurę, wybacz. Chodziło mi o path.relative('.', event.path).
- 0
@niezielony: dobra, zacznijmy od ścieżek. Zbadaj to, dodałem dist jako argument funkcji runjade. Potestuj, pologuj i daj znaka.
- 1
@niezielony: znowu nasadziłem błędów. Spróbuj z tym.
- 0
@niezielony: chodzi już wyłącznie o browserSync, tak? W sensie sam setup gulp+jade już działa i transpiluje pliki na bieżąco, tak?
- 0
@niezielony: to jest jakieś SPA, np. Angular? Zastanawiam się czy browserSync wie co z tym stream-em zrobić. Spróbuj w runjade zamiast .stream() odpalić .reload().
- 0
@niezielony: wydaje mi się, że browserSync musi wiedzieć, że Twoja aktualna odsłona zależy jakoś od tego zmienionego pliku, żeby odpalił się reload. Trudno mi cokolwiek powiedzieć :/
- 1
@niezielony: Gulp-a i Grunt-a w starszych projektach. Oba mają swoje zakamarki, nie powiedziałbym, że któryś jest jakoś wyraźnie lepszy. Gulp jest nieco szybszy i code-over-configuration, więc dla mnie wygrywa.
- 0
@ennovum: we wszystkich plikach masz spięty runtime browserSync-owy?
- 0
@niezielony: z tego co pamiętam, aby browserSync działał, trzeba na stronie załączyć mały plik JS-owy. To nazywam runtime-m.
EDIT
W docs-ach oni to nazywają klientem. I jeśli używasz browserSync-owego serwera, to plik jest załączany automagicznie. Używasz?
EDIT
W docs-ach oni to nazywają klientem. I jeśli używasz browserSync-owego serwera, to plik jest załączany automagicznie. Używasz?
- 0
@niezielony: a spróbuj browserSync.stream({match: '**/*.html'})
- 5
Hej Mirki.
Gram na bębnach w zespole Godbite. Przed Wami nasza strona internetowa (wczoraj ją skończyłem #webdev ;), gdzie rozpoczynamy pre-order naszego pierwszego oficjalnego albumu: :
http://godbite.pl
Krótkie wprowadzenie:
Godbite - the Aristocrats
“The Aristocrats” to sprawozdanie z mentalnej wędrówki, w której czas gra kluczową rolę, a jednak chronologia jest zaburzona...
*champagne pops*
[ a poniżej fragment jednego z utworów ]
#muzyka #rock #metal #szczecin #alternativerock #godbite
Gram na bębnach w zespole Godbite. Przed Wami nasza strona internetowa (wczoraj ją skończyłem #webdev ;), gdzie rozpoczynamy pre-order naszego pierwszego oficjalnego albumu: :
http://godbite.pl
Krótkie wprowadzenie:
Godbite - the Aristocrats
“The Aristocrats” to sprawozdanie z mentalnej wędrówki, w której czas gra kluczową rolę, a jednak chronologia jest zaburzona...
*champagne pops*
[ a poniżej fragment jednego z utworów ]
#muzyka #rock #metal #szczecin #alternativerock #godbite
- 0
@hoRacy: stronka jak stronka, nic szczególnego. Usunąłbym ten background noise :P i typografię przemyślał raz jeszcze.
Co to za pomysł żeby robić preorder albumu debiutującej kapeli?
Co to za pomysł żeby robić preorder albumu debiutującej kapeli?
- 0
@hoRacy: no jeśli jesteście tak pewni siebie, to luz. Ja po prostu pierwszy raz widzę nazwę i się zdziwiłem. Jeśli chodzi o typo, to wszystko preferencje, rzecz jasna. Mi odpowiada ostatni pomysł jak najmniejszej ingerencji w to, a najlepiej użycie fontu systemowego. Czyli kursywa must die, przynajmniej w standardowym tekście. I line-height do góry.
- 0
@hoRacy: ok, h8rs gonna h8, wiem, ale muszę. Ile ten "klip z koncertu" ma wspólnego z koncertem?
- 3
#webdev #pomoc #doctorwho #dalek #programowanie ( xD )
Kto mi pomoże zrobić modulator głosu dalekowego? Moje doswiadczenie z js i webdevem konczy sie na postawieniu strony na bootstrapie ( ͡° ʖ̯ ͡°)
http://webaudio.prototyping.bbc.co.uk/ring-modulator/
Zahostuje nawet ( ͡° ͜ʖ ͡°)
Kto mi pomoże zrobić modulator głosu dalekowego? Moje doswiadczenie z js i webdevem konczy sie na postawieniu strony na bootstrapie ( ͡° ʖ̯ ͡°)
http://webaudio.prototyping.bbc.co.uk/ring-modulator/
Zahostuje nawet ( ͡° ͜ʖ ͡°)
- 0
@biczek: co chcesz zrobić ponad to co oferuje stronka, którą podlinkowałeś? I w jakim celu?
- 0
@biczek: no wciąż nie rozumiem. Oni podają tam kod źródłowy wprost. A i experimental mic support jest, tylko zależy od przeglądarki. Jestem dziś mocno wczorajszy, może to to, ale nie rozumiem co jest do zrobienia :/
Elo, krótkie pytanko:
znajomy miał ostatnio rozmowę o pracę jako junior js dev i mówił, że padały głównie pytania o rzeczy w stylu webworkers czy nowe ficzery ES6. Takie rzeczy są według was już teraz standardem (dla juniorów), czy pytania były trochę na wyrost? Nie ukrywał, że był trochę zaskoczony i zastanawiał się, czy jest takim leszczem, czy trafił na ambitniejszych rekruterów ( ͡° ͜ʖ ͡°)
#javascript #
znajomy miał ostatnio rozmowę o pracę jako junior js dev i mówił, że padały głównie pytania o rzeczy w stylu webworkers czy nowe ficzery ES6. Takie rzeczy są według was już teraz standardem (dla juniorów), czy pytania były trochę na wyrost? Nie ukrywał, że był trochę zaskoczony i zastanawiał się, czy jest takim leszczem, czy trafił na ambitniejszych rekruterów ( ͡° ͜ʖ ͡°)
#javascript #
- 44
- 1
@marbog6959: myth busted. dzięki!
#webdev