4 ms·
JSX is not a requirement for React. React has the same kind of flexibility you are criticizing. https://facebook.github.io/react/docs/react-without-jsx.html ht
by sgustard 9y ago
JSX is not a requirement for React. React has the same kind of flexibility you are criticizing.
https://facebook.github.io/react/docs/react-without-jsx.html https://facebook.github.io/react/docs/react-without-jsx.html
- jolux 9y agoNot a requirement per se, sure, but it's strongly suggested and other usages are not idiomatic.
- tehbeard 9y agoThat is simply skipping the transpiling of JSX, the structure/nesting is the exact same, not some DSL crafted for templating.
- cjalmeida 9y agoReact without JSX is very clunky at best.
- emn13 9y agoThat's not at all the same, for (at least) 2 reasons. - Defaults matter; templates as defaults means most examples, support, tools, extensions, etc. will assume templating. - React without JSX doesn't actually affect the code structure or flow. Looping, conditionals, composition etc. all stay the same; and that shouldn't be surprising since JSX is essentially no more than a slightly different syntax for nested method calls and object literals; which is quite unlike templates in vue; those have actual semantics too. I've used react without jsx before (some time ago for a coffeescript based project), and it affects little. If you do that, you'll want to introduce some alternative shorthand to avoid all those repetitive "React.createElement" calls, but doing so is trivial - after all, it's just method calls and object literals. I'm not a huge fan of custom languages like JSX in general, and indeed JSX too (I believe) was a mistake. However, with sufficient support and a small enough target to support, it's less of an issue. Still, even extremely well funded projects like razor are clearly much less well supported by tooling than the language they're based on, even many years later. Vue's templates? Completely hopeless.