2013-07-23 9 views
1

Работа с надстройкой Polymer Project, метки <element> и <polymer-element> принимают атрибут attributes, чтобы публиковать вещи в пользовательском элементе (1).Jade HTML-атрибут, называемый атрибутом

Это вызывает проблемы с нефритом, поскольку с #617attributes как имя атрибута обрабатывается специально. Есть ли обходной путь для этого в Джейд?

ответ

1

Просто поместите «\» до атрибутов-атрибута, например, так

polymer-element(\attributes='foo bar') 

Это было только предположение, но это сработало. Невозможно найти ссылку в документации по этому вопросу.

Так что рассматривайте его как работу вокруг.

+0

Это больше не работает и больше не требуется. – ForbesLindesay

1

Я не знаю, если это поможет в вашей конкретной ситуации, но помните, что вы можете использовать свойство объекта с именем publish в своем прототипе вместо атрибута на <polymer-element>attributes.

E.g.

<polymer-element attributes='foo bar'...>... 

эквивалентно

<polymer-element...>... 
    <script> 
    Polymer(..., { 
     publish: { 
     foo: null, 
     bar: null 
     } 
    } 

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

+0

Да, это обходной путь Я сейчас использую. Учитывая примечания в Polymer о предпочтительном синтаксисе атрибутов и моих собственных эстетических предпочтениях, я бы предпочел решение на основе разметки. –

1

Только для того, чтобы сохранить этот ответ в актуальном состоянии, attributes больше не зарезервирован в jade :).

2

После недавнего обновления нефрита (v1.0.0 и выше) attributes больше не является специальным корпусом. Таким образом, вы можете просто написать:

polymer-element(attributes='foo bar') 

результаты:

<polymer-element attributes="foo bar"></polymer-element> 

Если вы хотите попробовать его в вашем браузере, вы можете сделать это по адресу: http://jade-lang.com/demo/

 Смежные вопросы

  • Нет связанных вопросов^_^