Introduction to react.js
React is a JavaScript framework built at Facebook, it was built to answer the question "How should we structure JavaScript applications".
There are a lot of JavaScript frameworks that try to answer this question, most of them are MVC based (or MVVM or MVW) - basically they're all based around models - which are just observable objects that have some events api that allows you to subscribe to some changes on that object. So developers set up bi-directional data-binding that allow you to subscribe to changes on you r model, so whenever something changes you can mutate and update your view.
React is a JavaScript library for building user interfaces, you get all the good parts of a complete render, but without the downsides such as performance and loss of data.
At the heart of react is, declarative components - describing what components look at at any point in time
There are a lot of JavaScript frameworks that try to answer this question, most of them are MVC based (or MVVM or MVW) - basically they're all based around models - which are just observable objects that have some events api that allows you to subscribe to some changes on that object. So developers set up bi-directional data-binding that allow you to subscribe to changes on you r model, so whenever something changes you can mutate and update your view.
React is a JavaScript library for building user interfaces, you get all the good parts of a complete render, but without the downsides such as performance and loss of data.
At the heart of react is, declarative components - describing what components look at at any point in time
Initial Render
There is no explicit data binding, in react we just define one render function, and the purpose of this render function is to describe what your view looks like in any point in time. It returns a representation of your view. We recursive call render to build up this hierarchy. When we want to generate the mark-up of this representation for the first time, we take the representation and iterate over it generate a string and inject it into the document. This does something called two-pass rendering which is generating the string, then later, after the string is injected into the document we attach the event handlers at the top-level, which exposes some really interesting opportunities, since your generating your string somewhere separate from where your hooking up your events, you can render on the server.Update Rendering
Instead of mutation for updating react uses a process called reconciliation, the purpose of this is to keep you UI up-to-date as your data changes, automatically updates your views and DOM. The render function that does the initial rendering and returns a string representation of what our components should look like at that point in time, and react compares that with the current DOM and finds all the differences, based on those differences creates some DOM representations of just the relevant parts and updates the view.Building DOM Representations
Since the HTML is defined in JavaScript it would get a bit hard to understand for larger pages with a lot of nesting, there would be curly braces everywhere, so for that reason JSX syntax is used to define the elements. This is very similar to other templating engines and uses ordinary HTML-type syntax.
This post is based on information given by Tom Occhino from Facebook on his series about react.js
Subscribe to:
Post Comments
(
Atom
)
Nice post. This is a great way for a simple quick start with ReactJS. I’m looking forward to read more of your work.
ReplyDeleteBest Regards,
ReactJS Online Training in India
ReactJS Training in Hyderabad
ReactJS Online Training in Hyderabad
ReactJS Online Training
Learn ReactJS Online
ReactJS Training
ReactJS Online Course
React JS Online Training
ReactJS Training Institutes in Hyderabad
ReactJS Training Hyderabad
ReactJS Institutes in Hyderabad
ReactJS Classroom Training in Hyderabad
Best ReactJS Training in India
Learn ReactJS Course in Hyderabad
CourseIng
I wondered upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.
ReplyDeleteiOS App Development Company
Android App Development Company
Mobile App Development Company
A great way to learn about Reactjs. Your content is very useful. Thanks for sharing..
ReplyDeleteIt is very useful information about React js. This is the place for learner and glad to be here in this blog Thank you
ReplyDeleteReact js Training in Hyderabad
Best React js Online Training
React js Training in Ameerpet
React js Online Training
React js course in Hyderabad
It is very useful information about React js. This is the place for learner and glad to be here in this blog Thank you React js Training in Hyderabad
ReplyDeleteReact js course in Hyderabad
Always ready to appreciate innovative thoughts and iam very glad to be part in this blog very useful for vistors.React js Training in Hyderabad
ReplyDeleteEnroll
Excellent article! It is very helpful for me. keep sharing such quality post.
ReplyDeleteFull Stack online Training
React JS Training
Node JS Training
Nice job keep it up visit good reactjs resource Reactjs Tutorial
ReplyDeleteBest Website Designing and Development Company in London,
ReplyDeleteReact JS Developer in London,
React Native Developers in UK,
Hire Mean Stack Developer London UK,
Hire Hybrid App Developers in UK,
An astounding web diary I visit this blog, it's inconceivably magnificent. Strangely, in this current blog's substance made point of fact and sensible. The substance of information is instructive.
ReplyDeleteOracle Fusion Financials Online Training
Oracle Fusion HCM Online Training
Oracle Fusion SCM Online Training
oracle Fusion Technical online training
ReplyDeleteThanks for the great article this is very useful info thanks for the wonderful post. Best Devops Training Institute
Thanks a lot for sharing us about this update. Hope you will not get tired on making posts as informative as this.
ReplyDeleteReactJS Online Training
This is an awesome post.Really very informative and creative contents. These concept is a good way to enhance the knowledge.I like it and help me to development very well.Thank you for this brief explanation and very nice information.Well, got a good knowledge.
ReplyDeleteTableau online training
Nice information, Thanks for sharing informative information about ReactJs. If you want to know more or from the beginning. Get best React Js course & training here.
ReplyDeleteThis is an awesome post.Really very informative and creative contents. These concept is a good way to enhance the knowledge.I like it and help me to development very well. reactjs training in Hyderabad
ReplyDelete
ReplyDeletethanks for the shared such a informative information.
Thanks
Cpa offers
Your post is just outstanding! thanks for such a post,its really going great and great work Website Designing Companies in Bangalore | Website Designing Company in Bangalore | Website Designers in Bangalore | Web Design & Development Company in Bangalore
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteExcellent Blog. Thank you so much for sharing.
ReplyDeletebest react js training in chennai
react js training in Chennai
react js workshop in Chennai
react js courses in Chennai
react js training institute in Chennai
reactjs training Chennai
react js online training
react js online training india
react js course content
react js training courses
react js course syllabus
react js training
react js certification in chennai
best react js training
I really enjoyed your blog Thanks for sharing and it was very usefully to me
ReplyDeleteReactJs Online Training
ReactJs Training
ReactJs Training Institute
ReactJs Training in Hyderabad
ReactJs Training in Ameerpet
ReactJs Training in Hyderabad
Best ReactJs Training in Hyderabad
very nice blog thanks for the valuable information
ReplyDeleteFull Stack online Training
Full Stack Training
Full Stack Developer Online Training
wow it's very nice and excellent. very amazing blog. i really impressed your article.it's very different and useful.thanks for it.web design company in velacheryweb design company in chennai
ReplyDeleteThank you for your post. This is useful information.
ReplyDeleteHere we provide our special one's.
iphone job training center
iphone training classes in hyderabad
iphone training institute in hyderabad
apple ios training institutes in Hyderabad
iphone app development in hyderabad
Really Good blog post. Provided a helpful information. I hope that you will post more updates like this. seo services in kolkata | seo company in kolkata | seo service provider in kolkata | seo companies in kolkata | seo expert in kolkata | seo service in kolkata | seo company in india | best seo services in kolkata | digital marketing company in kolkata | website design company in kolkata
ReplyDeleteThanks for Sharing This Article.It is very so much valuable content. I hope these Commenting lists will help to my website
ReplyDeleteangular js online training