Решил как-то разобраться, как работает аякс в мини-корзине.
Смотрел, искал, снова смотрел… и так понял, что после ответа от сервера js записывает нужные значения в определенные теги. (классы num, text, cost)
А если нужен мини-вывод всех товаров в корзине? это что же, лезть искать процессор, писать свои дополнялки туда?
Собственно, сам вопрос: а почему нельзя конечный html передавать? аяксом запросить нужный tpl и вывести результат разбора? чем это хуже вывода отдельных переменных?
Собственно, сам вопрос: а почему нельзя конечный html передавать?
За год с лишним, вы первый, кто об этом спросил. Надо понимать, что платформа дает основу, а делаете вы уже дальше что хотите. Посмотрите шаблон просмотра корзины, расширяющий базовый шаблон корзины. Там вызывается процессор получения данных корзины. Вот вам все необходимое для формирования собственного HTML-а. Хотите через Ajax это сделать, вот вам полезная статья на этот счет. Изучайте, все в ваших руках.
Собственно, сам вопрос: а почему нельзя конечный html передавать?
Очевидный минус передачи html — больший объем ответа. Если сидишь через wifi, то м.б. и будет нормально, а если взять мобильный инет, то будет тяжко.
Также если передаваемый шаблон подразумевает какую-либо динамику, то это доп. объем кода и соответственно нагрузка.
Ваш аргумент про «дополнялки», на мой взгляд, не выдерживает критики. Ведь если что-то надо добавить, так же придется лезть в шаблон и что-то править. А откуда данные попадают в шаблон? Из процессора. Его так же придется править. Так что шило на мыло.
В данном случае гораздо правильнее смотреть на передачу чистых данных и использование шаблонизации на стороне клиента. Подавляющее большинство современных решений юзают либо сторонний js-шаблонизатор, либо свою реализацию вывода представления. Я бы смотрел в этом направлении.
Ведь если что-то надо добавить, так же придется лезть в шаблон и что-то править
когда-то я думал — было бы здорово написать такую штуку чтобы вставил пару файлов со скриптами на сайт, и затем только меняй обертку для каждого конкретного случая.
использование шаблонизации на стороне клиента
звучит интересно, сюда я наверно и буду копать