2016-04-17 42 views
5

Czy ktoś zaimplementował Underscore lub Lodash w swoim istniejącym projekcie AngularJS w celu zwiększenia wydajności? Jeśli tak, to:Czy korzystanie z programu Lodash w projekcie AngularJS przynosi korzyści?

  • Czy zmiany były zauważalne, czy coś, co poleciłbyś?
  • Który z funkcji Lodasha miał największe zalety?

Nie grałem wcześniej z Lodashem i nie chciałem się tego nauczyć. Ale zazwyczaj lubię się czegoś nauczyć, a następnie używać go wkrótce, aby koncepcje były lepsze. Jeśli zdobędę jakieś dobre korzyści z wdrożenia Lodasha, to myślę, że byłby to dobry moment, aby go teraz nauczyć.

Zazwyczaj potrzebuję wykonywać funkcje, takie jak filtrowanie lub znajdowanie obiektu wewnątrz jakiejś kolekcji, więc myślę, że tam będę go najbardziej wykorzystywać.

+1

Naprawdę byłoby używać go tylko dla wygody vs względów wydajnościowych. Zależy również od tego, ile manipulacji danymi musisz wykonać. Uznane pytania, takie jak te, są tutaj wyłączone. – charlietfl

+0

Upuściłem go z powodu 30-40 ms dodatkowego czasu ładowania. Użyłem filtra, scalania, klonowania, każdego, mapy, wyboru, ale napisałem własne. – YOU

Odpowiedz

3

Cóż, mają naprawdę różne cele.

Angular ma na celu zbudowanie aplikacji. Pomaga to w ustrukturyzowaniu kodu i oddzieleniu odpowiedzialności pomiędzy elementami (moduły, kontrolery, usługi, dyrektywy, routery).

Lodash może manipulować kolekcjami, tablicami, obiektami, łańcuchami itp. Pomaga to w skróceniu, oczyszczeniu i prawdopodobnie szybszym kodzie. Jest naprawdę dobrze przetestowany i udokumentowany. Moim zdaniem ułatwia to pracę.

Używam Lodasha od 4 lat. Znalazłem go przydatny we wszystkich moich projektach (Backbone, Angular, JavaScript, node, w testach jednostkowych, w plikach konfiguracji kompilacji (Grunt, Gulp, Webpack)).

PS: Lodash jest także niezbędnym elementem programowania funkcjonalnego w JavaScript.

Edit: Example of searching that you can't easily achieve without Lodash

+0

Dzięki za opinię. Ale o to właśnie pytam. Znam różnice między nimi, ale byłam ciekawa, czy przy korzystaniu z niego w porównaniu z wbudowaną funkcjonalnością Angular, jak np. Filtrowaniem obiektów, była większa wydajność. A może jakaś korzyść naprawdę, jak wspomniałeś, że zawsze z niej korzystasz. – kenshin9

+0

Osobiście nie używam Lodasha do celów wydajnościowych, więc nie mogę powiedzieć, kto jest najszybszy do filtrowania. Ale czasami po prostu łatwiej jest filtrować za pomocą aplikacji Lodash niż Angular. Możesz także myśleć inaczej, na przykład tworzyć nową tablicę/kolekcję z innej i używać nowej w powtórzeniu ng. Zależy od sytuacji, ale dzięki Lodashowi masz więcej narzędzi do budowania tego, co próbujesz zbudować. –

+0

Mam cię, to brzmi interesująco. Dzięki! – kenshin9