Top Banner
ВВЕДЕНИЕ В REACT.JS Вебинар по React.js
29

React Webinar Slides

Jan 14, 2017

Download

Software

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: React Webinar Slides

ВВЕДЕНИЕ В REACT.JS

Вебинар по React.js

Page 2: React Webinar Slides

Вебинар 09/09/2016 Введение в React.js

ПОЗНАКОМИМСЯ?

Page 3: React Webinar Slides

ПОРШНЕВА КАТЕРИНА Front-end & UX @ YouScan

https://twitter.com/krambertech

https://www.facebook.com/catherine.porshneva

https://github.com/krambertech

https://vk.com/id180260885

https://www.linkedin.com/in/kporshnieva

Page 4: React Webinar Slides
Page 5: React Webinar Slides

React - библиотека для создания пользовательских интерфейсов.

Page 6: React Webinar Slides
Page 7: React Webinar Slides

React re-renders the whole app on any data (state) change

Page 8: React Webinar Slides

DOM IS SLOW 🐌

JavaScript IS FAST 🚀

Page 9: React Webinar Slides

Вебинар 09/09/2016 Введение в React.js

VIRTUAL DOM

Page 10: React Webinar Slides
Page 11: React Webinar Slides

Страница DOM дерево

Page 12: React Webinar Slides

Страница DOM дерево

<div>

<div>

<img><p>

<bold><span>

<h1>

Page 13: React Webinar Slides

Виртуальный DOM - легковесная копия реального DOM в виде JavaScript объектов

Page 14: React Webinar Slides
Page 15: React Webinar Slides

<div>

<div>

<img><p>

<bold><span>

<h1>

<div>

<div>

<img><p>

<bold><span>

<h1>

DOM diff

ПослеДо

Page 16: React Webinar Slides

<div>

<div>

<img><p>

<bold><span>

<h1>

<div>

<div>

<img><p>

<bold><span>

<h1>

PATCH

Реальный DOMВиртуальный DOM

Page 17: React Webinar Slides

‣ React строит новое виртуальное DOM-дерево

‣ Сравнивает с предыдущим

‣ Рассчитывает минимальное количество изменений DOM-дерева и добавляет их в очередь

‣ Применяет все изменения к реальному DOM-дереву

ПРИ КАЖДОМ ИЗМЕНЕНИИ…

Page 18: React Webinar Slides

Вебинар 09/09/2016 Введение в React.js

JSX

Page 19: React Webinar Slides

<Nav color="blue"> <Profile> Katya </Profile> </Nav

React.createElement( Nav, {color:"blue"}, React.createElement( Profile, null, "Katya" ) );

до после

Page 20: React Webinar Slides

Вебинар 09/09/2016 Введение в React.js

KEYS

Page 21: React Webinar Slides
Page 22: React Webinar Slides
Page 23: React Webinar Slides
Page 24: React Webinar Slides

а

а

b

b

с

сd

Page 25: React Webinar Slides

var blog = articles.map(function(article) { return ( <div key={article.id}> <h1>{article.title}</h1> <p>{article.text}</p> </div> ); })

Page 26: React Webinar Slides

Вебинар 09/09/2016 Введение в React.js

СОБЫТИЯ

Page 27: React Webinar Slides

onClick

onClick

onClick

onClick

onClick

onClick

onClick

onClick

onClick

Page 28: React Webinar Slides
Page 29: React Webinar Slides

Вебинар 09/09/2016 Введение в React.js

Q / A