Angular komponent – ViewEncapsulation

Tworząc komponenty za pomocą Angulara dostajemy możliwość zarządzania kapsułkowaniem styli dla komponentów. W rzeczywistości oznacza to, że dostajemy możliwość zarządzania tym jak style z danego komponentu mają wpływać na resztę aplikacji (inne komponenty). Sposób kapsułkowania w komponencie ustawiamy za pomocą właściwości encapsulation obiektu metadanych komponentu Jak widzimy Angular dostarcza 4 sposoby kapsułkowania styli dla komponentu. Domyślnym sposobem (czyli jeżeli nie podamy parametru encapsulation) jest Emulated, dodatkowo dostępne mamy ShadowDom, None i Native. Poniżej opiszę pierwsze 3, Native pominę ponieważ jest już deprecated. ViewEncapsulation.Emulated Jest to domyślna wartość kapsułkowania styli w Angular i charakteryzuje się tym, że style są domknięte w Więcej…

Angular – cykl życia komponentu

Angular dla komponentów, czyli podstawowych elementów budowy aplikacji udostępnia dość pokaźny zestaw tzw. hooków (uchwytów?), dzięki którym możemy reagować w interesujących nas momentach cyklu życia komponentu (Angular component lifecycle) na zdarzenia zachodzące w danym komponencie. Hooków jest 8, wyglądają następująco i odpalane są w następującej kolejności Przed hookami uruchamiany jest jeszcze konstruktor klasy komponentu. ngOnChanges – Pierwszym uruchamianym hookiem (co nie musi być tak oczywiste) jest ngOnChanges. Funkcja ta uruchamiana jest gdy dla pól klasy oznaczone dekoratorem @Input() zmienią się wartości (jeżeli klasa nie posiada pól oznaczonych @Input() ngOnChanges nie jest uruchamiany) jest to jedyna metoda z cyklu życia komponentu, Więcej…

Referencja

W JavaScript/TypeScript rozróżniamy typy proste i typy złożone. Typy proste to string, number, boolean. Zmienna przechowująca typ prosty przechowuje po prostu wartość. Jeżeli wartość jest typu złożonego (obiekt, tablica) to wówczas zmienna jest referencją do tej wartości a nie samą wartością. Jeżeli utworzymy zmienną typu prostego a następnie drugą zmienną której jako wartość inicjującą przypiszemy wcześniej utworzoną zmienną, to wówczas druga zmienna otrzyma kopię wartości znajdującej się w pierwszej zmiennej. Sprawa ma się trochę inaczej w przypadku typów złożonych. Jeżeli do zmiennej przypiszemy typ złożony (np. nowy obiekt) to zmienna będzie tak naprawdę referencją na ten obiekt a nie samym Więcej…

Operatory logiczne w JavaScript

W poprzednim wpisie – Rekrutacja frontend developer – dałem zajawkę co przeczytać będzie można w kolejnym wpisie, słowo się rzekło więc dziś o operatorach logicznych w JavaScript/TypeScript – && (koniunkcja) i || (alternatywa). Niby temat banalny, bo co tu skomplikowanego w kodzie najbardziej intuicyjne ale czy najczęstsze zastosowanie operatorów logicznych? Kod powyżej pokazuje wprost – zmienna x jest true, zmienna y false, więc pierwsze wyrażenie nie jest prawdziwe a drugie już tak, co skutkować będzie wyświetleniem tylko drugiego komunikatu na konsoli. Cała zabawa zaczyna się w momencie gdy nie wiemy co będzie się kryło pod zmiennymi sprawdzanymi w wyrażeniach (dane Więcej…

Rekrutacja frontend developer

Temat przewijający się w internetach strasznie często, ale myślę że każdy punkt widzenia wart jest poznania, może akurat trafi się coś nowego. Od mniej więcej półtora roku w firmie w której pracuję biorę udział w rekrutacjach. Jako jeden z liderów teamów frontendowych zostałem poproszony o przygotowanie kilku pytań które zweryfikują kandydata i pozwolą nam stwierdzić po pierwsze czy jesteśmy zainteresowani, a po drugie zbadać aktualną wiedzę i poziom. Sam w przeszłości odbyłem jakieś rozmowy (akurat na programistę Java) i pamiętając co mi najbardziej przeszkadzało starałem się nie popełnić pytań w stylu „sztuka dla sztuki i pokażę Ci jaki jesteś słaby”. Więcej…

console.info(‚Hello world 2.0’);

A dokładniej to Po długim czasie przemyśleń i prób zebrania się w sobie w końcu postanowiłem reaktywować blog. Plan powrotu do pisania nie urodził się przed chwilą tylko dojrzewał już dłuższy czas, jednak brakowało motywacji i ta przyszła pod koniec minionego rok. Jako że powrót jest planem przemyślanym to nie rzucam się z pisaniem od razu i na każdy temat oraz wypaleniem po miesiącu, a raczej stawiać będę na regularność. Jako, że regularność ma być podstawą to na początek postanowiłem określić kiedy wpisy będą się pojawiać i padło na pierwszy i trzeci czwartek miesiąca (czyli 2 wpisy na miesiąc). Dlaczego Więcej…

Trochę nowości w świecie virtual ride

Do tej pory wirtualna jazda na rowerze kojarzyła się głownie z aplikacją Zwift, owszem programów do treningów na trenażerach, głownie tych smart jest cała masa, jednak to Zwift stawiając na możliwość rywalizacji z innymi zawodnikami z całego świata i prezentujący całkiem niezłą grafikę na pewno wybijał się. Jakiś czas temu natrafiłem na informację o nowy, podobnym do Zwifta projekcie – Road Grand Tours, wszedłem na stronę, wypełniłem formularz do zapisu na beta testera i zapomniałem o tym, na szczęście gdy beta testy ruszyły na mojej skrzynce mailowej pojawiła się o tym informacja wraz z zachętą aby sprawdzić jak to się Więcej…

I od tego nie odejdę

Październikowy wieczór, nikt nie chciał „wyjść” na piwo, a ja zrobiłem sobie dziś przerwę w „treningach” i tak z okazji pojawienia się bonusowego czasu przeznaczyłem go na przemyślenia. Około miesiąc temu skończył się sezon kolarski i mając trochę innej pracy postanowiłem odpocząć od roweru. Biorąc pod uwagę zaistniałą sytuację, „rozłąki” tej miało być 2 tyg, jak postanowiłem tak zrobiłem. Przez rozłąkę z rowerem mam na myśli też wszelkie rzeczy z tym związane, a przede wszystkim dietę, żyje się tylko raz więc od czasu do czasu można pozwolić sobie na nie liczenie kalorii. Pracy którą założyłem początkowo było sporo, później jednak się to lekko zluzowało, Więcej…

Desaturacja w PHP

Ostatnio miałem takie małe zadanko, którego celem było wyszarzenie ikony, gdy zajdzie jakieś zdarzenie. Oczywiście nie interesowało mnie, utworzenie ręcznie szarego odpowiednika dla kolorowej ikony i wyświetlanie go gdy zajdzie taka potrzeba, dlatego poszukałem czy istnieje coś takiego w PHP,a że chwilę poświęciłem na znalezienie tego, to zanotuje tutaj ;) Jak się okazało po chwili nieudolnych poszukiwań (uleciała mnie nazwa desaturacja, dlatego pewnie tak długo to trwało) znalazłem funkcje w php, która zrobi wszystko co mnie interesuje za „free” i nie potrzeba będzie jakiś dodatkowych libów. Funkcja, o której mowa to mnogość parametrów i mnie zabija do teraz, ale po kolei Więcej…

Podsumowanie sezonu MTB i powrót na stare śmieci

Sezon 2012 się zakończył, przynajmniej dla mnie jeżeli chodzi o ściganie, teraz wstępuję w okres rozjazdowo-przygotowawczy do nowego sezonu, poprzedzony 2 tyg „(nie)zdrowym opierdalaniem się” ;) Przy okazji postanowiłem też powrócić na stare śmieci i uciec z bloga TC-Team.pl, skoro Krzyś przestał się udzielać, to sam mogę pisać tu, nie muszę tam ;) Swoją drogą przypomniał mnie się pierwszy wpis dotyczący moich rowerowych wyczynów – http://lewyino.pl/2009/06/a-ja-na-tej-wojnie-ponad-2-godziny/ ciekawe kto to czytał :P Co do sezonu 2012, to na poważne zacząłem go w marcu, styczeń i luty były dość słabo przetrenowanymi miesiącami, głównie z racji kontuzji złapanej na początku roku (a może Więcej…