It's my first time when I try to work with react. And I do not understand what's going on.. :)
A have:
Dislike = React.createClass
render: ->
if @props.auth == true
React.DOM.a
className: ''
React.DOM.i
className: 'fa fa-thumbs-o-down'
"Dislike (#{@props.num_dislike})"
else
React.DOM.i
className: 'fa fa-thumbs-o-down'
"Dislike (#{@props.num_dislike})"
Like = React.createClass
render: ->
if @props.auth == true
React.DOM.a
className: ''
React.DOM.i className: 'fa fa-thumbs-o-up',
"Like (#{@props.num_like})"
else
React.DOM.i
className: 'fa fa-thumbs-o-up'
"Like (#{@props.num_like})"
@LikeBox = React.createClass
render: ->
return (
React.createElement(Dislike, @props)
React.createElement(Like, @props)
)
In my view a have:
= react_component('LikeBox', {auth: current_user.present?,
num_like: 23,
num_dislike: 32,
link_like: like_suggestion_path(suggestion),
link_dislike: dislike_suggestion_path(suggestion)})
And when I open page a have:
<div data-react-class="LikeBox" data-react-props="{....}">
<a class="" data-reactid=".0">
<i class="fa fa-thumbs-o-up" data-reactid=".0.0">Like (23)</i>
</a>
</div>
But my expectations is:
<div data-react-class="LikeBox" data-react-props="{....}">
<a class="" data-reactid=".0">
<i class="fa fa-thumbs-o-up" data-reactid=".0.0">Like (23)</i>
</a>
<a class="" data-reactid=".0">
<i class="fa fa-thumbs-o-down" data-reactid=".0.0">Dislike (73)</i>
</a>
</div>
What is wrong with this block ?
@LikeBox = React.createClass
render: ->
return (
React.createElement(Dislike, @props)
React.createElement(Like, @props)
)