Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   express-snakeskin - view через snakeskin для express (https://javascript.ru/forum/project/47810-express-snakeskin-view-cherez-snakeskin-dlya-express.html)

melky 08.06.2014 20:00

express-snakeskin - view через snakeskin для express
 
Всем привет! Учусь писать на LiveScript и тестировать написанное.

Написал пакет, связывающий Snakeskin и express 4.

Фичи\HowTo в ридми на гитхабе: https://github.com/ColCh/express-snakeskin

kobezzza 08.06.2014 20:53

Респект :) Буду обновлять доку как раз скоро для Snakeskin, обязательно добавлю ссылку.

ЗЫ: я вот думаю, что для live-подхода нужно добавить какой-то инструмент для предварительной линковки файлов. Сейчас в консольной утилите Snakeskin интегрирован сборщик Jossy, но наверно стоит интегрировать его на уровне самого Snakeskin. В общем вынес эту проблему на решение в ближайшем обновлении шаблонки.

ЗЫЗЫ:
Заметил, что при компиляции не указывается "файл-источник" - это нужно для более информативных сообщений об отладке.

snakeskin.compile template, { context: js_tmpl }, {file: путь к файлу}


Ещё нужно будет мне сделать возможность задания callback для отлова ошибок при трансляции, чтобы не делать try-catch, т.к. это сильно бьёт по производительности.

melky 09.06.2014 10:51

Цитата:

Сообщение от kobezzza (Сообщение 315632)
ЗЫ: я вот думаю, что для live-подхода нужно добавить какой-то инструмент для предварительной линковки файлов. Сейчас в консольной утилите Snakeskin интегрирован сборщик Jossy, но наверно стоит интегрировать его на уровне самого Snakeskin. В общем вынес эту проблему на решение в ближайшем обновлении шаблонки.

да, она может понадобиться для layouts

Цитата:

Сообщение от kobezzza (Сообщение 315632)
ЗЫЗЫ:
Заметил, что при компиляции не указывается "файл-источник" - это нужно для более информативных сообщений об отладке.

snakeskin.compile template, { context: js_tmpl }, {file: путь к файлу}

О_о а я не нашёл этого в документации
можно ссыль на код и документацию, где представлена эта опция? может ещё чего интересного найду

написал, но пока не коммичу
Цитата:

Сообщение от kobezzza (Сообщение 315632)
Ещё нужно будет мне сделать возможность задания callback для отлова ошибок при трансляции, чтобы не делать try-catch, т.к. это сильно бьёт по производительности.

ага, к сожалению (или счастью), нода работает на V8 с его странными методами оптимизации

kobezzza 09.06.2014 11:18

Цитата:

О_о а я не нашёл этого в документации
можно ссыль на код и документацию, где представлена эта опция? может ещё чего интересного найду
А именно про это доку я и забыл написать, ну собственно там кроме file ничего интересно и нет, т.к. другую инфу, вроде названия шаблоны или номера строки сам Snakeskin подставляет.

melky 10.06.2014 09:15

Цитата:

Сообщение от kobezzza (Сообщение 315706)
А именно про это доку я и забыл написать, ну собственно там кроме file ничего интересно и нет, т.к. другую инфу, вроде названия шаблоны или номера строки сам Snakeskin подставляет.

а как выглядит эта ошибка ? подставил и хз , заметных улучшений не заметил)

kobezzza 10.06.2014 11:35

Цитата:

Сообщение от melky (Сообщение 315839)
а как выглядит эта ошибка ? подставил и хз , заметных улучшений не заметил)

Ну вот к примеру такой шаблон

{template foo()}
    {a = 1}
    {a = 2}
{/}


должен выдать ошибку, что нельзя переопределить константу и сказать номер строки и имя файла


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