2015-04-18 3 views
4

Могу ли я использовать меньше с полимером?Polymer.js и Less.js

После того, как я написал свой полимерный элемент.

<polymer-element name="message-tpl" attributes="name avatar"> 
    <template> 
     <link rel="stylesheet/less" type="text/css" href="less/message.less"> 
... 

Но таблица стилей не работает.
Меньше работ, если я пишу rel="stylesheet"

+0

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

+0

Можно скомпилировать Менее в браузере. http://lesscss.org/#client-side-usage – wishmaster35

+1

Это не должно работать из коробки, поскольку таблица стилей, включенная в полимерный элемент, является локальной для теневого домика, в то время как меньше файлов будет сидеть в области окна. – Neo

ответ

-2

Я думаю, что это возможно.

  1. Extract CSS в файл
  2. Compile Менее

Так же, как использование bable с полимером. Они используют gulp-crisper разделить код в HTML, а затем скомпилировать эти code.For пример

Перед

<dom-module id="html-echo"> 
    <style> 
    :host { 
     display: block; 
    } 
    </style> 
    <template> 
    </template> 
</dom-module> 

<script> 
    (function() { 
    Polymer({ 
     is: 'html-echo', 
     properties: { 
     html: { 
      type: String, 
      observer: '_htmlChanged' 
     } 
     }, 
     _htmlChanged(neo) { 
     // WARNING: potential XSS vulnerability if `html` comes from an untrusted source 
     this.innerHTML = neo; 
     } 
    }); 
    })(); 
</script> 

После, есть буксировка файл: html-echo.html

<html><head></head><body><dom-module id="html-echo"> 
    <style> 
    :host { 
     display: block; 
    } 
    </style> 
    <template> 
    </template> 
</dom-module> 

<script src="html-echo.js"></script></body></html> 

и html-echo.js

'use strict'; 

(function() { 
    Polymer({ 
    is: 'html-echo', 
    properties: { 
     html: { 
     type: String, 
     observer: '_htmlChanged' 
     } 
    }, 
    _htmlChanged: function _htmlChanged(neo) { 
     // WARNING: potential XSS vulnerability if `html` comes from an untrusted source 
     this.innerHTML = neo; 
    } 
    }); 
})(); 

Я думаю, что это как меньше будет работать с pol ymer, потому что полимер должен разбирать css, нет возможности использовать меньше в компиляции браузера (если вы не хотите настраивать теневой элемент), и меньше нужно поддерживать синтаксис стиля Polymer, по крайней мере, отчет об ошибке.

Кроме того, я хотел бы видеть, поддерживает ли полимер css parser поддержку синтаксиса. : P

0

Если вы по-прежнему заинтересованы, я начал работу над плагином gulp, который преобразует ваши * .less файлы в модуль стиля Polymer. Проверьте это здесь: https://github.com/kshep92/gulp-polymer-style

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