2014-12-09 5 views
7

Я хочу использовать эту Ом сниппет в моем ClojureScript применения:Используя встроенный строку стиля с ClojureScript, Ом, и React.js

(dom/img 
    #js {:className "img-circle" 
      :src "data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" 
      :style "width: 140px; height 140px;" 
      :alt "Generic Placeholder Image"}) 

Этот «взрывается» и останавливает весь рендеринг всей страницы!

Я думаю, что причина связана с тем, как React.js обрабатывает стили. Согласно Inline Styles:

В реакторе встроенные стили не указаны в виде строки. Вместо этого они указываются с объектом, ключ которого является версией стиля стиля camelCased, и значение которого является значением стиля, обычно строка

Каковы некоторые хорошие способы решения этой проблемы? Обычно мне не нравятся встроенные стили, но я хотел бы знать, как заставить этот пример работать.

ответ

8

Я нашел пример в исходном коде Om, который привел меня, чтобы попробовать это, который работает:

(dom/img 
    #js {:className "img-circle" 
      :src "data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" 
      :style #js {:width "140px" :height "140px"} 
      :alt "Generic Placeholder Image"}) 
+0

Вам не нужно писать 'px' единиц в явном виде. Иногда это удобно. –

+0

То есть, Om ожидает стиль как (javascript) карту, а не строку. – prabhasp