How to use if within a map return?
javascript, reactjs
Solution
You put `return` statement inside `if` clause like so:
row = this.props.cells.map(function(cell, i) {
if(cell.URL != null && cell.URL.length > 0){
return <td className={cell.Meta.HTMLClass} key={i}>{cell.Text}</td>;
}
else {
return <td className={cell.Meta.HTMLClass} key={i}>{cell.Text}</td>;
}
}.bind(this));
Problem
I need to generate diffrent reactJS code based on datamodel but I get In file "~/Scripts/Grid.jsx": Parse Error: Line 13: Unexpected token if (at line 13 column 15) Line: 52 Column:3 With this code ``` var GridRow = React.createClass({ render: function() { var row; row = this.props.cells.map(function(cell, i) { return ( if(cell.URL != null && cell.URL.length > 0){ <td className={cell.Meta.HTMLClass} key={i}>{cell.Text}</td> } else { <td className={cell.Meta.HTMLClass} key={i}>{cell.Text}</td> } ); }.bind(this)); return ( <tr> {row} </tr> ); } }); ``` The render part seems to be really limited in how it can be used?