2013-09-01 11 views
17

Jestem nowy w rozwoju gry Phonegap & Próbuję wybrać ramy do użycia. Chciałbym użyć AngularJS, ponieważ czytałem dobre rzeczy na ten temat, ale chciałbym, żeby działał z Parse.com jako zapleczem. Zauważyłem, że jeden Parse.com nie określają żadnej zgodności z Angular, a cała ich dokumentacja i JavaScript API wymaga Backbone.Czy możesz używać AngularJS z Parse.com?

Wiem, że AngularJS obsługuje http, więc mogę komunikować się z Parse za pomocą REST API. Ale czy to skończy się bałaganie & czy zaoszczędzę sobie czasu, jeśli użyję Backbone z API JavaScript Parse.com?

Odpowiedz

56

Nie pracowałem nad Parse, ale uważam, że jak długo istnieje dostępny interfejs REST API AngularJS może bardzo dobrze zintegrować się z Parse.com. Te linki uzasadnić fakt

https://parse.com/questions/does-any-know-of-any-angularjs-sites-that-are-built-with-parse-that-are-open-source

http://brandid.github.io/parse-angular-demo/#/

powiedziawszy, angularjs jest bardzo zdolny ramy ze stromą krzywą uczenia się. Proste rzeczy są proste, ale trzeba położyć je na głowie i zacząć uczyć się nie tak prostych rzeczy, jak directives, gdy tylko zaczniemy budować jakąś przyzwoitą wielkość. Im więcej zainwestujesz w uczenie się AngularJS, tym bardziej będzie ono satysfakcjonujące.

Ma bardzo czysty podział pod względem widoku i kodu. Kod jest dalej podzielony na moduły, fabryki, usługi, kontrolery, dyrektywy, filtry itp.

Ale wciąż nic nie powstrzyma cię od tworzenia bałaganu z realizacją :) To, co zdałem sobie sprawę z upływu czasu, nawet jeśli tworzysz bałagan w AngularJS efekty są zlokalizowane, a nie wpływają na kompletną aplikację, ze względu na modułowy charakter Angular.

Proponuję spróbować tworzenia lub patrząc na niektórych próbek z angularjs (takich jak TodoMVC)

This jest jak czułem uczenia się i wdrażania angularjs rozwiązań enter image description here

+23

kochał wykres! – Guy

+1

+1 dla [wersja demo] (http://brandid.github.io/parse-angular-demo )! – KFL

18

Dzięki za wychować nasze Parse x angularjs boilerplate - właśnie zaktualizowaliśmy to dzisiaj.

Cała nasza witryna getbrandid.com jest zbudowana przy użyciu Parse x AngularJS i nie ma własnych serwerów.

Zbudowaliśmy ten szablon po tym, jak spędziliśmy kilka lat budując BRANDiD, mieliśmy wiele dobrych praktyk, którymi moglibyśmy się podzielić ze społecznościami Parse i AngularJS. Uważamy, że jest to mecz stworzony w niebie i jest najszybszym sposobem na zbudowanie potężnych złożonych, wysoce konserwowanych aplikacji bezserwerowych.

Zasadniczo rozszerzyliśmy pakiet Parse SDK, aby obsługiwać wiązania AngularJS, wyeliminowaliśmy tonę kodu standardowego, a co najważniejsze, opracowaliśmy architekturę dla dużych aplikacji bez serwera, wykorzystujących funkcję Parse i Angular.

Gorąco zachęcam, aby to sprawdzić -

Parse x AngularJS Boilerplate

+2

Właśnie sprawdziłem BrandID i UWIELBIAŁEM! To takie fajne! Jak to się stało, że rozszerzyliście SDK, zamiast używać Parse poprzez REST? – cjm2671

+1

Tylko notatkę. Twoja witryna zostanie zerwana, jeśli włączony jest blok reklam Adblock. –

+6

Twoja witryna nie działa teraz, pokazuje błędy w konsoli. –

11

Właściwie dokumentacja Parse „s nie mówi, że trzeba użyć Parse z Backbone, to po prostu mówi, że niektóre rzeczy są zgodną z Backbone klasy, takie jak obiekt Collections, który może być przydatny TYLKO W przypadku korzystania z Backbone.

Duży problem z używaniem zewnętrznych elementów wewnątrz kątowych to jego cykl życia, ponieważ korzysta z nich tylko w celu śledzenia zmian w tych obiektach w określonych punktach czasowych - więcej informacji znajdziesz w artykule Scope Life Cycle documentation.

Biorąc pod uwagę, że gdy Parse zwraca jego wywołania zwrotne, AngularJS może już nie być obserwując te Parse objets, więc potrzebny jest sposób mówienia kanciasty, że coś zmieniło, i trzeba to zrobić wewnątrz pętli strawienia, na przykład za pomocą $scope.$apply

stworzyłem small wrapper for Parse.Query and Parse.Object aby uniknąć konieczności $scope.$apply cały czas, daj mi znać, jeśli okaże się to przydatne: https://github.com/felipesabino/angular-parse

Powiązane problemy