2017-01-20 7 views
0


Я пытался сделать так:
Multiline нескомпилированном атрибута в нефрите

body(
    |{% case page.url %} 
    | {% when '/' %} 
    | class="hellopage" 
    | {% when page.url contains '/gallery/' %} 
    | class="gallerypage" 
    |{% endcase %} 
) 

Это {% ..%} материала для жидкости на самом деле.
Итак, он не скомпилирован. Как написать многострочный атрибут в теге?

+0

Есть ли особая причина, по которой вы используете язык шаблонов на языке шаблонов? Заявление 'case' может быть реализовано и в мопсе, что устраняет необходимость в жидкости ... – gandreadis

+0

@gandreadis, Liquid in jekyll. Я не могу ссылаться на URL-адрес сайта через мопса. – VostokSisters

ответ

1

EDIT:

Проблема заключается в том, что мопс компилятор не любит {% последовательности символов в атрибуте. В вашем конкретном случае, это работа вокруг было бы избежать перевода строки и поместить Жидкую логику в строке значения атрибута, а также:

body(class="\ 
    {% case page.url %}\ 
    {% when '/' %}\ 
     hellopage\ 
    {% when page.url contains '/gallery/' %}\ 
     gallerypage\ 
    {% endcase %}" 
) 

Старого ответ:

Я не думаю, что вам нужен символ трубы (|). Атрибуты на нескольких линиях are supported от Pug. Что-то вроде этого должно быть достаточно:

body(
    {% case page.url %} 
    {% when '/' %} 
     class="hellopage" 
    {% when page.url contains '/gallery/' %} 
     class="gallerypage" 
    {% endcase %} 
) 

Должно работать, но не проверял, хотя (из-за отсутствия среды тестирования Liquid + МОПС).

+0

На самом деле это не атрибут, это обычный текст в атрибуте ... В любом случае, ваша догадка [не работает] (http://dl3.joxi.net/drive/2017/01/21/0001/0403/ 94611/11/f1cd297b88.png). – VostokSisters

+0

Вы используете компилятор жидкости перед компилятором Pug? Потому что это выглядит так, как '{%' теги не удаляются корректно после того, как выполняется жидкость. – gandreadis

+0

Я запускаю gulp-jade, вот и все ... – VostokSisters