5 ms·
> React is so much more than “just JavaScript”. React is an ecosystem. I feel like it’s a disservice to anyone trying to learn to diminish all that React entail
by ipsum2 8y ago
> React is so much more than “just JavaScript”. React is an ecosystem. I feel like it’s a disservice to anyone trying to learn to diminish all that React entails. React shows up on the scene with Babel, Webpack, and JSX (which each have their own learning curve) then quickly branches out into technologies like Redux, React-Router, Immutable.js, Axios, Jest, Next.js, Create-React-App, GraphQL, and whatever weird plugin you need for your app.
> In my experience, there’s no casual mode within React. You need to be all-in, keeping up with the ecosystem, or else your knowledge evaporates.
This is not true at all. I use React for work and for pet projects, and I don't use or know what most of these libraries do. (We do use Redux).
It's easy to get caught up in library mania and chase after the newest javascript fads, but it is not necessary to build products.
Also, GraphQL is not tied to React or Javascript.
- maskd 8y agoPerhaps a more charitable interpretation of the article is that when writing a larger application in React you'll be led from React-the-library (which is "just JavaScript") into React-the-ecosystem, which looks less like "just JavaScript" and more like the other frameworks. You can definitely write your application in React without external dependencies, but how is a beginner expected to do that, especially with all these other popular libraries around?
- madeofpalk 8y agoAnd? It's a criticism or interesting observation that when you build large, complex applications that they can be large and complex?
- hungerstrike 8y agoI think the more salient point here is that React-the-ecosystem is just the JavaScript ecosystem. There were very few packages mentioned that are strictly only useful with React.
- sus_007 8y agoJust out of curiosity, what are your thoughts on Vue? I've heard a lot of good things about it.
- ipsum2 8y agoI dislike the templating language, preferring jsx which is mostly standard js syntax, e.g.: Vue: <li v-for="i in items">{{i}}</li> React: items.map((i) => <li>{i}</li>)
- bartaxyz 8y agoJust to make things clear. You can use JSX with Vue as well. It's even a recognized way to write code in the official documentation (https://vuejs.org/v2/guide/render-function.html#JSX https://vuejs.org/v2/guide/render-function.html#JSX). JSX is just a language that can be interpreted into code for React & Vue.
- Can_Not 8y agoNot to mention that you can use Jade/pug, also.
- Jare 8y agoIIRC you can use JSX with Vue via a Babel plugin [1]. I can't vouch for it personally but it should be pretty easy to use. [1] https://github.com/vuejs/babel-plugin-transform-vue-jsx#usage https://github.com/vuejs/babel-plugin-transform-vue-jsx#usag...
- alayek 8y agoI learned this the hard way, coming from React to Vue land; that v-for on an element would also repeat the element itself. With React, it was pretty clear which element / component would repeat.
- Bizarro 8y ago"Stringy code" is an issue, but it's more declarative and readable than JSX map.
- deleted 8y ago[deleted]