3 ms·
I think ternary expression are rather ok here, though not perfect: {cond1 && cond2 ? <div>foo</div> : null }
by cel1ne 10y ago
I think ternary expression are rather ok here, though not perfect:
{cond1 && cond2
? <div>foo</div>
: null
}
- danneu 10y agoAnd you can inline if-statements with an IIFE when you need a little more space: {(() => { if (cond1 && cond2) return <div>foo</div> else ... })()} Though it makes GitHub think it's a Clojure file.
- vanderZwan 10y ago{(() => { })()} Honestly I can't decide if I think this is ugly or beautiful. It's like the buffalo buffalo of JS.
- olalonde 10y agoThat's something the "do expressions" ECMAScript proposal is meant to solve: {do { if (cond1 && cond2) <div>foo</div> else ... }} If JSX decides to implement "implicit" "do expressions", I suppose it would just look like this: { if (cond1 && cond2) <div>foo</div> else ... } http://wiki.ecmascript.org/doku.php?id=strawman:do_expressions http://wiki.ecmascript.org/doku.php?id=strawman:do_expressio...
- deleted 10y ago[deleted]
- spirit23 10y agoIt’s interesting to see that there are so many ways of doing conditions in JSX. I myself wrote a tiny library (http://github.com/yuanchuan/cond http://github.com/yuanchuan/cond) for it several months ago and thought it made the code looks clean but suffers the same undefined issue though.