6 ms·
Whats the state on coffeescript+jsx these days? I had a horrible time getting it transpile correctly (with gulp) about a year ago.
by mytranspiler 11y ago
Whats the state on coffeescript+jsx these days? I had a horrible time getting it transpile correctly (with gulp) about a year ago.
- epmatsw 11y agoWe've had pretty good success compiling cjsx with gulp-cjsx. The one annoyance I've noticed is that it's just a tad more finicky about whitespace and parentheses/brackets than normal coffeescript, but I suppose that's to be expected.
- mambodog 11y agoIf there is a particular case which you think should work but doesn't, please file an issue on the coffee-react-transform repo and I'll look into it.
- superplussed 11y agoThe code is just so clean. I never understand why it's not more widely used. The JSX blocks are just so clean without all of the braces and the like, and even get syntax highlighted as HTML in sublime.
- dugmartin 11y agoI stopped using JSX with React+CoffeeScript. I think the following looks a lot cleaner and removes the jsx dependency: {div, a} = React.DOM ... render: -> (div {}, (a {href: 'foo'}, 'bar') ) The only downside is having to extract the tags from React.DOM.
- mikewhy 11y agoWouldn't you have to use `React.createFactory` in this case as well? (when not dealing with React.DOM components)
- dugmartin 11y agoYes you do need to use it. I put each component in its own file and use Browserify to require them in like this: MyComponent = React.createFactory require './my-component' then you can do render: -> (div {}, (MyComponent {}) )
- seivan 11y agoYou could omit the parenthesis and it starts to look a lot like HAML :-)
- dugmartin 11y agoThe parens help to make sure CoffeeScript parses it correctly. Plus it looks kind of Lispy which is good right?
- seivan 11y ago"looks kind of Lispy which is good right?" :D, you sound not sure :) I haven't had any issues without the parens, but then again I've only just fooled around. You probably know better.
- Keats 11y agoWorks very well in typescript as well !
- rawrmaan 11y agoWe use CJSX at OneRent with Grunt and Browserify and it's been nothing but fantastic. The syntax is terse and beautiful and IT saves us a lot of typing. To me, ES6 just seems like a lot of catch-up to CoffeeScript, while still maintaining much of the unnecessarily verbose syntax of JS.