Я использую Backbone.js для приложения, включающего множество различных представлений, некоторые вложенные другие представления, и эти другие представления могут дополнительно вложить другие представления.
Кроме того, представление представления зависит от определенных атрибутов в модели, например, некоторое содержимое отображается только в том случае, если пользователь прошел проверку подлинности, или другой тип проверки if
Исходя из мираВ Adobe Flex я привык почти полностью объявлять свои представления с помощью разметки, даже глубоко вложенной или составной.Flex делает объявление компонентов в разметке простым куском.
Я надеялся, что смогу добиться такого же разделения между чистым представлением представления и логикой представления в Backbone, но до сих пор я боролсяс этим.
Причина этого заключается в том, что я никоим образом не могу объявить составное представление только с использованием шаблонов.Таким образом, мне приходится прибегать к использованию метода render () BB для создания экземпляров подпредставлений и добавления их к родителю.Это нормально ... но если представления становятся действительно детализированными, объявлять их с помощью JS - это излишнее убийство, потому что я буквально заканчиваю тем, что добавляю чистые строки HTML, что является полным беспорядком.Это означает, что гораздо лучше использовать шаблоны для этих шаблонов, а затем просто визуализировать шаблон вместо того, чтобы выполнять всю работу с использованием JS.
Использование обоих подходов просто нарушает любую согласованность в приложении, но я стараюсьчтобы быть в порядке с этим, потому что я прочитал много (даже профессионально написанного) кода Backbone, и я видел других людей, борющихся с тем же.
Если я не могу избежать этого разделения подходов рендерингатогда, по крайней мере, мне нужно будет установить какие-то определенные границы, какие виды должны отображаться с помощью шаблона, а какие нет, или только частично.Вопрос в том, какими будут эти критерии.