The brand new world of React components


#1

Okay, I am almost persuaded to try React with Meteor. When talking about React, the #1 reason is reusable components.

So, could anyone share their experiences of wealth of React components, which you use in production and which save you tons of time, money and energy, with links.


#2

Atm I am using a site like http://react.parts to find some components. You can easily see how popular each component is.


#3

Thank you, I have also came across this resource (actually, they moved away from servicing React Only to larger ecosystem at https://js.coach/ ).

But they seem to be so newbie (fade in, split pane, progress bar) that I am really puzzled if there are any components of practical value impossible/not available with React alternatives.


#4

I think most of the React components are also possible with jQuery plugins. A good example may be the react-list component. There is also a jQuery plugin which serves virtual lists, but how would you handle it with Blaze? In this case, the React component seems to be the “easier” way, because you have to pass some other component to it and et voilà, everything works like it should be.


#5

Well, infinite scrolling seems not to be a novelty. And was already available in Blaze - https://atmospherejs.com/?q=infinite%20scroll

I have checked this one - https://github.com/jamgold/blaze-infinite-scroll - and unlike React, which handles facebook-like lines, it handles whole articles.

So, I am beginning to understand, the value of React is not the wealth of components in its ecosystem but rather ability to gracefully handle ‘Component within component’ which traces back to the need of facebook to host independent apps by other developers, right?

If this is correct, I would rather resort to Blaze especially taking into account availability of http://components.meteorapp.com/

But should I ever plan to write web-site, which should host apps by other developers, React would be a real treasure.


#6

The plugin I’ve posted is not about typical infinite scrolling, it handles dynamic rendering of items within the scrollable element. For example, you have 10.000 documents and you want to display them, the React component above will handle that for you without loosing performance, because it only adds the element’s to the DOM which are visible. This is also possible with Blaze (someone here posted a blog tutorial a few days ago), but it isn’t available as a maintained package, so you have to hack it by your own.

Just another example - mobile app development. If you take a look to React Native, you are able to develop real native app’s with Javascript. How would you handle that with Blaze? Cordova? Yeah, but then your app isn’t native and you may loose a lot of performance on slower devices (depends on your app).

At the moment, it depends on your project if you really need React. In the most cases, Blaze is still a good choice, especially if the project is smaller.


#7

Mobile and React Native is quite other world, I am only currently interested in SaaS.

I guess only time will tell, which Startups are successful with Blaze, which with React, and which are with Angular. In the end, Meteor was conceived as a platform for rapid development of apps by startups.