Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Snakeskin (https://javascript.ru/forum/project/35057-snakeskin.html)

kobezzza 06.11.2014 00:33

Спасибо, забыл обновить: я поменял папку сборки с build на dist, как принято в bower пакетах

Safort 06.11.2014 02:05

kobezzza,
а можно нубский вопрос? Как использовать скомпилированные шаблоны на клиенте? :D
В доке примера не нашёл. Подключаю так:
<script src="/snakeskin.live.min.js"></script>
<script src="/index.ss.js" type="text/x-snakeskin-template"></script>

Но функции из шаблона не доступны глобально.

kobezzza 06.11.2014 08:34

Ты наверное устал :)

Кто же подключает JS файл с таким типом type="text/x-snakeskin-template", не мудрено, что не работает, т.к. браузер просто игнорирует это.

Делай так:

<script src="/snakeskin.live.min.js"></script>
<script src="/index.ss.js"></script>


text/x-snakeskin-template нужен, если ты описываешь инлайн шаблоны

<script src="/snakeskin.live.min.js"></script>
<script type="text/x-snakeskin-template">
- template foo()
    ...
</script>

Safort 06.11.2014 08:47

kobezzza,
Цитата:

Ты наверное устал
ога(

Цитата:

Кто же подключает JS файл с таким типом type="text/x-snakeskin-template", не мудрено, что не работает, т.к. браузер просто игнорирует это.
Я сначала подключал как надо, но вылетает ошибка
ReferenceError: global is not defined

ведущая к 5-й строке index.ss.js
var Snakeskin = global.Snakeskin;

kobezzza 06.11.2014 08:52

Ты уверен, что у тебя не exports = 'commonJS' экспорт?

Для клиентских шаблонов экспорт должен быть другим, т.е. без такого экспорта.

Цитата:

Я сначала подключал как надо, но вылетает ошибка
ReferenceError: global is not defined
Хотя к твоей проблеме это отношения не имеет, но это микроошибочка, исправлю потом :)

Safort 06.11.2014 09:12

kobezzza,
он самый
.pipe(snakeskin({ prettyPrint: true, exports: 'commonJS', cache: false }))


Вот блин, я то думал его так можно использовать)
Получается, нужно в двух "форматах" экспортировать файлы, чтобы оно везде работало(?) Сейчас так сделал - всё работает.
Сейчас глянул в доку к плагину, как я понимаю, параметр exec это прошлый cache?

//Мб лучше описать параметр exports в доке?

kobezzza 06.11.2014 09:22

Цитата:

Вот блин, я то думал его так можно использовать)
Получается, нужно в двух "форматах" экспортировать файлы, чтобы оно везде работало(?)
В принципе можно сделать рабочим commonJS для браузера, но там нужно будет делать дополнительные инициализации, я добавлю это в следующий релиз.

https://github.com/kobezzza/Snakeskin/issues

Цитата:

Сейчас глянул в доку к плагину, как я понимаю, параметр exec это прошлый cache?
Нет, параметр exec означает, что скомпилиный шаблон нужно немедленно выполнить и в качестве результата у тебя уже будет html, а не JS, это нужно для статической генерации сайтов.

Параметры tpl и data также относятся к exec.

Цитата:

//Мб лучше описать параметр exports в доке?
Дык, https://github.com/kobezzza/Snakeski...ompile#exports

***

Кстати, задавай вопросы лучше в issue на гитхаб, вдруг у кого ещё такие проблемы будут, а так типо FAQ будет.

Safort 06.11.2014 09:34

kobezzza,
Цитата:

Нет, параметр exec означает, что скомпилиный шаблон нужно немедленно выполнить и в качестве результата у тебя уже будет html, а не JS, это нужно для статической генерации сайтов.
Я точно устал..

Моя плохая привычка - чтобы посмотреть доки, лезу на страницу галп-плагину, а не к самому модулю)

Цитата:

Кстати, задавай вопросы лучше в issue на гитхаб, вдруг у кого ещё такие проблемы будут, а так типо FAQ будет.
и позориться ещё и на англ. сегмент?!Я пока почти не умею в Гитхаб ;( Как начну его использовать, так сразу)


Спасибо, в очередной раз)

kobezzza 06.11.2014 09:35

Цитата:

Моя плохая привычка - чтобы посмотреть доки, лезу на страницу галп-плагину, а не к самому модулю)
Дык, https://github.com/kobezzza/gulp-sna...82%D1%80%D1%8B (параметры - это ссылка) :)

Safort 06.11.2014 09:38

kobezzza,
так там же не все параметры, того же commonJS нету. Или я уже того, и не вижу его.. *ушёл спать*


Часовой пояс GMT +3, время: 00:33.