Writing here is to provide another perspective as I don't work on Facebook or Instagram and only know when React was first publicly announced last week. )
I took a quick look at Ember and Angular and intend to write something in each Ember to test them, but React caught my attention last week.
I just rewrote a 2000
Line project in React, now some requests have been made to respond.
So far everything I 've seen about the reaction seems to be well thought out
I'm proud to be the first
FB/IG production users of React.
The project I re-wrote in React (
And continue to improve)
Content creators can be used to enter the Khan Academy question editor for questions and tips that will be presented to students: there is an actual editor on the left, when the right side of the page shows a live preview of the problem you are writing.
Initially, the editor serializes the entire issue and gives it to the preview, which renders the issue to the page.
Performance is a concern for old editors, so I asked it to keep track of whether the question, answer area, or solution is changing and to redisplay only the appropriate parts.
Unfortunately, the interface is still very slow and irritating, because we still often re-render more content in the changed parts of the bitset;
Make it more dirty
Checking the logic into the editor-renderer interface seems to only make the code more complex and more difficult to maintain. (
Narrator: Why is rendering so slow?
The main culprit is MathJax, which we use to render mathematical expressions in text.
Even a few simple expressions are typeset (
Just like it doesn't have to touch the DOM.
I rewrote the renderer in a declared way, and React is responsible for figuring out what to update.
The source is reduced by several hundred lines, and the time required to update the preview is an order of magnitude less than before.
I think my favorite reaction is that it's simple.
For example, an Angular document on how to write instructions (
A reusable component
Need to explain the difference between instruction priority, compilation and link, creation and transformation of new scope, all these are Corners
As far as I know, React's approach here is as powerful as other frameworks, but it won't be harder to maintain.
React's code is quite mature for me-as it has been used in production by Facebook and Instagram for a while and it looks like most bugs have been fixed.
It hasn't done everything for you yet (e. g.
, Automatic asynchronous commitment support or two-
Data Binding methods like Angular's ng
TextField of Model or Ember)
But things seem to work well there.
The biggest complaint I 've come across is that the documentation is sometimes unclear and the best practices are not clearly documented.
However, this should not prevent anyone from using React.
Also, I found the developers very helpful on IRC and I have no doubt that the documentation will only get better over time.
I love React so far and am now trying to convince my colleagues to use it with me.
The problem first appeared on Quora.