Показать сообщение отдельно
  #6 (permalink)  
Старый 26.04.2012, 18:46
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Я понимаю, что всем похуй, но всё же...
Вышла новая версия - 2.1.0

Что изменилось:
1. Выпилил тег set за ненадобностью
2. Теперь переменные из внешнего шаблона не доступны в подключаемых, дабы не прострелить себе ногу.
3. Добавлен метод extend, для расширения набора тегов из кода.
4. Пойманы и наказаны несколько багов.
5. Расширилось API тегов.

Приведу пример шаблона:
page.xml:
<tsn:root xmlns:tsn="TSN">
        <!-- Создаем скрипт для хедера -->
        <!-- Сначала сгенерируем конечный результат и сохраним в переменную -->
        <tsn:var name="header">
            <script type="text/javascript">
                //<![CDATA[
                console.log();
                //
                ]]>
            </script>
        </tsn:var>

        <!-- А при вызове шаблона просто будем возвращать результат -->
        <tsn:template name="header">
            <tsn:echo text="_var.header" />
        </tsn:template>

        <!-- Контент страницы -->
        <tsn:template name="body">
            <div>Body</div>
        </tsn:template>

        <!-- Подключаем базовый шаблон -->
        <tsn:include src="base.xml" context="this.globalData" />
    </tsn:root>



Файл с базовой разметкой base.xml:
<html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <link href="base.css" type="text/css" rel="stylesheet"/>
            <!-- Здесь будет выводиться стили для конкретной страницы -->
            <tsn:include name="header" />
        </head>
        <body>
            <!-- Вставляем навигацию с передачей необходимых данных -->
            <tsn:include src="common/navigation.xml" context="this.navigation" />
            <!-- Вставляем контент, который был определён ранее и унаследован здесь -->
            <tsn:include name="body" />
            <!-- Вставляем футер с передачей необходимых данных -->
            <tsn:include src="footer.xml" context="this.footer" />
        </body>
    </html>


Вроде всё логично и понятно, как думаете?
__________________
Болтовня ничего не стоит. Покажите мне код. — Linus Torvalds
влад.куркин.рф

Последний раз редактировалось B~Vladi, 26.04.2012 в 23:46.
Ответить с цитированием