DJZT
@DJZT
Laravel - code for you

Как правильно хранить шаблоны для Backbone моделей?

Озадачиваюсь вопросом, как правильно организовать подгрузку шаблонов для моделей backbone. Видел пример, когда Ajax'ом вытягиваются шаблоны с сервера в виде статически .html страниц, а в модели попросту храниться URL путь, где лежит этот шаблон. Правильный ли это способ? Поделитесь, как вы храните свои шаблоны?
  • Вопрос задан
  • 383 просмотра
Решения вопроса 2
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Ну для начала — хранить шаблоны в моделях вообще неправильно. Про свои шаблоны должны знать только вьюхи.

Если у вас сборка организована с помощью browserify, то шаблоны можно компилировать на лету при сборку и во вьюхах писать просто типа такого:

render: () {
    this.$el.html(require('templates/template.jade')())
}
Ответ написан
Как и везде в программировании, в данном случае нет "правильного" или "неправильного" способа. Все зависит от ващих задач, каждый способ имеет сильные и слабые стороны в зависимости от них.

Я собираю в переменную при помощи grunt и подгружаю js-файл с ними при старте страницы (это в режиме разработки, конечно, на продакшене все скрипты собираются в один файл).
Это позволяет компилировать на сервере, то есть шаблоны работают быстрее (вопрос о том, насколько быстрее они работают, остается открытым). При таком подходе, конечно, грузятся вообще все шаблоны, часть из них может вообще не пригодиться, для избежания этого как раз и загружают их по требованию, когда они реально нужны. Но это добавляет элемент асинхронности - нужно обрабатывать загрузку шаблона, показывать спиннер в интерфейсе и т.п.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы