2012-04-24 8 views
18

Obecnie istnieje wiele JavaScript MVC frameworks, które współpracują z Handlebars.js oferując powiązanie danych między modelem/kontrolerem a szablonem. Aktualnie wdrażam sam Handlebars.js (z jQuery) i potrzebuję powiązać dane między moim głównym kodem a szablonem, aby ten ostatni był automatycznie aktualizowany. Czy jest jakiś sposób na zrobienie tego w Handlebars lub za pomocą wtyczki? Jeśli tak nie jest, czy istnieje jakiś składnik tych frameworków MVC, który udostępnia tę funkcjonalność i może być używany jako autonomiczny bez frameworku full-stack?Jak powiązać dane w szablonie Handlebars.js w celu automatycznej aktualizacji wartości?

+0

To jest na stronie głównej Handlebars http://handlebarsjs.com/ – MilkyWayJoe

+4

Przeczytałem, czy możesz wskazać, gdzie jest napisane, jak szablony aktualizują się automatycznie po zmianie wartości? –

+0

Przykro mi. Myślałem, że pytasz, jak powiązać dane z szablonami Handlebars. Potrzebujesz czegoś, co doda observables do twojego kodu, takiego jak framework MVC. Jeśli nie chcesz mieć pełnej implementacji ramowej, wypróbuj ten http://www.codeproject.com/Articles/13914/Observer-Design-Pattern-Using-JavaScript, możesz stworzyć własny z bardzo małym kodem (nie tak dobry) – MilkyWayJoe

Odpowiedz

11

Spójrz na nity: https://github.com/mikeric/rivets. Używam szkieletu, kierownicy i kręgosłupa do dwukierunkowej aktualizacji. Działa świetnie.

Backbone.modelbinding (https://github.com/derickbailey/backbone.modelbinding) został porzucony, ale odnosi się do nitów.

+2

Wygląda na to, że Rivets.js jest tym, czego szukałem, mimo że nie potrzebuję go obecnie, ponieważ pracuję z AngularJS, który ma zintegrowane wiązanie danych, dobrze jest wiedzieć, że istnieje. –

+1

Wiem, że to stary post, ale jeśli mam rację, kierownicę nie można użyć jako silnika szablonów dla nitu, prawda? Tak jak to widzę, Rivets ma swój własny parser szablonów. –

+0

Czy możesz wyjaśnić, jak używać nity z kierownicą? Nie tylko pracują razem na opakowaniu, o ile wiem. – styfle

0

Wygląda na to, że możesz chcieć użyć modelu Backbone view do renderowania szablonu Handlebars i słuchania zdarzeń jQuery na elementach "wewnątrz" widoku. Możesz używać widoków szkieletowych bez konieczności korzystania z modeli, kolekcji lub routera, ale nadal musisz dołączyć pełną bibliotekę szkieletową (6,3 kb, spakowana i spakowana gzipem) i podkreślenie, co może być problemem dla ciebie, jeśli rozmiar jest wynagrodzenie.

Powiązane problemy