Jestem w trakcie przenoszenia ciężkiej aplikacji WWW JSF do aplikacji REST i głównie do modułu JS.Niezależne zdarzenia dotyczące piaskownicy JavaScript i stosu po stronie klienta
Widziałem „skalowalną architekturę aplikacji javascript” Nicholas Zakas na YUI teatru (doskonałe wideo) i wdrażane dużo rozmowie z dobrym wynikiem, ale mam kilka pytań:
znalazłem Wykład nieco mylący w odniesieniu do związku między modułami a piaskownicami, z jednej strony, moim zdaniem, moduły nie powinny być zakłócane przez coś, co dzieje się poza ich piaskownicą i dlatego publikują wydarzenia za pośrednictwem piaskownicy (a nie poprzez rdzeń, ponieważ rdzeń służy do ukrywania podstawowej biblioteki), ale każdy moduł w aplikacji otrzymuje nowy obszar izolowany? Czy sandbox nie powinien ograniczać zdarzeń do modułów używających go, czy też zdarzenia powinny być publikowane na stronie? na przykład : jeśli mam dwie edytowalne tabele, ale chcę je przechowywać w innym obszarze izolowanym, a jego zdarzenia mają wpływ tylko na moduły w tym obszarze izolowanym, na przykład w polu komunikatu na tabelę, która jest innym modułem/widgetem, w jaki sposób mogę to zrobić za pomocą piaskownicy za każdy moduł, oczywiście mogę przedłużyć zdarzenia z modułu id, ale to tworzy sprzężenie, którego chcę uniknąć ... i nie chcę spakować modułów razem jako jeden moduł na kombinację, ponieważ mam już 6-7 modułów.
Podczas gdy mogę ukryć bibliotekę podstawową dla małych rzeczy, takich jak selektor id itp. Chciałbym nadal korzystać z biblioteki bazowej dla zależności modułów i ładowania zasobów i użyć czegoś takiego jak moduł ładujący YUI lub dojo.require, więc w rzeczywistości ukrywanie biblioteki bazowej, ale same moduły są definiowane i ładowane przez bibliotekę podstawową ... wydaje mi się trochę dziwne.
Biblioteki nie zwracają prostych obiektów js, ale zazwyczaj zawijają je np. : Możesz zrobić coś takiego jak $$ (".nazwęklasy") .Każdy (... który czyści kod dużo, nie ma sensu owijać bazy, a następnie w module tworzyć zależność dla biblioteki bazowej przez wykonanie .each ale nie używanie tych funkcji powoduje, że napisany jest dużo kodu, który można pominąć ... a implementacja tej funkcji jest bardzo podatna na błędy.Auton:
Czy ktokolwiek ma doświadczenie w budowaniu stosu z przodu tego zamówienia? czy to jest zmiana biblioteki bazowej i/lub posiadanie modułów z różnych bibliotek, używanie datowalnych danych Yui, ale weryfikacja formularza za pomocą dojo ...?
Nieco kombinacji 2 + 4, jeśli zdecydujesz się zrobić coś takiego jak ja powiedział i wczytał dojo z widżetów walidacyjnych dla wejść przez program ładujący YUI t oznacza, że dojocore jest modułem, a moduł formy jest od niego zależny?
Dzięki.
Jestem bardzo zainteresowany w sposób, w jaki sposób łączyć JSF (zwłaszcza jego złącza backend jak a4j: jsFunction) utrzymanie modułów JavaScript zamknięty ?! –
Cześć Nikita, nie podłączyłem JSF i go zastąpiłem, zasadniczo wziąłem moje usługi back-end, które zostały zamknięte w JSF Beans i odsłoniłem je poprzez mapowanie ReST i napisałem interfejs w czystym JS. – Amnon