2017-12-21 14 views
0

Ich habe eine sehr einfache auf einem DOM Quelle auf einem Zyklen Stück Code umwandeln:Funktioniert der Cycle.js-DOM-Treiber mit JSX für Transformationen?

const tt_dom$ = tt_slider.DOM 
    .map(vn => {vn.sel += '.tt';console.log(9870, vn); return vn}) 

Nun, wenn die Komponente (dh tt_slider), um den HTML-Code gibt an, ohne JSX, sagen

div('.myclass', []) 

Dann bekomme ich die gewünschte Ausgabe aus meiner Transformation:

<div class="myclass tt"> 

Aber wenn ich dies mit JSX angeben:

<div className="myclass"> 

bekomme ich nur

<div class="myclass"> 

Bin ich etwas falsch? Ist das Standardverhalten? Oder vielleicht ein Fehler irgendwo auf Cycles?

Dank

Antwort

3

Die className prop in Snabbdom überschreibt alle anderen CSS-Klassen (in Ihrem Fall die sel). Der Grund, warum Ihr Hypertext-Code funktioniert, ist, dass Sie nicht die props sondern die sel stattdessen verwenden.

Wenn Sie es in div({ props: { className: 'myClass' }}, []) ändern, sehen Sie das gleiche Problem. Ich habe einen Fehlerbericht für snabbdom geöffnet, aber es scheint, dass dies Verhalten ist.

Sie könnten Ihr Problem lösen, indem Sie die Transformation verwenden die className prop.

Verwandte Themen