передача базовой модели или экспортированного объекта json в систему шаблонов, такую ​​как усы - PullRequest
4 голосов
/ 07 сентября 2011

знакомство с backbone.js и различными системами шаблонов Мне было интересно, что было бы лучшим способом передачи объектов в шаблон для рендеринга.

либо пройти по всей модели магистрали и используйте <% = model.get ('name')%>

или передать model.toJSON () и просто используйте <% = name%>

Каковы аргументы за / против при использовании любого из этих двух методов? или я могу выбрать то, что считаю наиболее полезным, не беспокоясь о компромиссах?

1 Ответ

4 голосов
/ 07 сентября 2011

все сводится к тому, что вы хотите сделать, на самом деле.большинство систем шаблонов позволяют передавать любой объект javascript в шаблон и вызывать методы, свойства и другие биты этого объекта.

лично, я всегда передаю model.toJSON() в шаблон.но я знаю нескольких людей, которые всегда передают полный model в шаблон и вызывают .get, как вы показываете.

не так много для компромиссов.нет никакой потери производительности для того или другого.вызов .toJSON () такой быстрый вызов, потому что он просто вызывает _.clone(this.attributes) за кулисами.Преимущество передачи toJSON () состоит в том, что вам не нужно писать дополнительный код в вашем шаблоне.Вы можете просто указать свойства напрямую.Преимущество передачи полной модели состоит в том, что вы можете вызывать методы для вашего объекта ... но я бы сказал, что это плохо, и вызовы методов должны выполняться внутри вашего объекта представления, а не шаблона ...на самом деле вопрос мнения.

...