2013-02-18 13 views
0

Я потратил много времени на изучение JS-фреймворков, и я чувствую, что backbone.js является лучшим для того, что мне нужно. Единственная проблема в том, что серьезно не хватает шаблонов. В нем говорится, что он открыт для него через сторонние дополнения, но мне сложно начать работу. Я хотел бы, чтобы данные в моделях могли подписаться.Как реализовать двустороннюю привязку HTML в backbone.js?

Вот моя модель и коллекции:

window.colorItem = Backbone.Model.extend({ 
}); 

window.colorLibrary = Backbone.Collection.extend({ 
    model: colorItem 
}); 

var colors = new colorLibrary(
    [ 
     {"unique_id":"1000","user_id":"1","color":"#66bf1c","note":"Enter a note!"}, 
     {"unique_id":"1001","user_id":"1","color":"#332c5d","note":"Enter a note!"} 
    ] 
); 

Как я мог просто подключить эту модель к DOM с Backbone.js?

+0

Для этого нужны Просмотры. Представления подпишутся на изменения модели через 'model.on (« change », callback)' и повторно отобразить subview – Deeptechtons

+1

Да, вам нужно View. Кроме того, есть несколько плагинов для Backbone, которые могут помочь вам установить двусторонние привязки данных простым способом, например [Modelbinder] (https://github.com/theironcook/Backbone.ModelBinder) или [Stickit] (http: //nytimes.github.com/backbone.stickit/) – Ingro

ответ

0

Вы должны создать основной вид, который будет отображать информацию о модели так, как вы хотите. Вам нужно будет передать коллекцию, которую вы хотите отобразить или мгновенно воспроизвести внутри представления. После этого вы должны захватить каждую модель из коллекции, чтобы отобразить ее на странице. Вы можете сделать это с помощью jquery и добавить его к нужному вам объекту или, и это то, что я рекомендую, вы создаете новое представление для каждой модели. Таким образом, вы можете управлять каждой моделью индивидуально с помощью событий.

Смежные вопросы