SlideShare a Scribd company logo
Vuejs, или как отказаться от React
Андрей Грачёв
Crello
Немного обо мне
▸ Architect at Crello(crello.com)
▸ Пишу на js с 2012 года
▸ Человек-оркестр
▸ Люблю всё новое
Грачёв Андрей
О чём будем говорить
Vuejs React
VS
Немного истории
2006
2010
2012
2013
??
2017
"Vue.js или как наконец отказаться от React"
Почему полюбился Angular 1.x.x
Observers - медленно!
Что всегда мешало сделать
нормальный MVVM
Но немного отойдём в сторону…
Почему полюбился Реакт
Компоненты - Удобно!
Почему полюбился Реакт
Virtual DOM, Batch Rendering - скорость!
React Native
Learn once - write everywhere!
Нам показали как делать правильно!
"Vue.js или как наконец отказаться от React"
Redial
Redux-saga
Immutable.js
Postcss modules
Classnames
Слишком сложно!
Vue to the rescue
"Vue.js или как наконец отказаться от React"
Вместо тысячи слов…
Компоненты
+
Virtual DOM
+
MVVM Bindings
Скорость React Удобство Angular
Роутинг
React Vue
React-router Vue-router
State management
React Vue
Redux, MobX Vuex
Шаблоны
React Vue
Только JSX Можно использовать
любой
шаблон,
например Pug
Особенности Рендеринга
Скорость
Неоптимизированный Vue быстрее
Неоптимизированного React
Чем Vue удобней?
Conditional rendering - React
let children
if (items.length > 0) {
children = (
<ul>
{items.map(item =>
<li key={item.id}>{item.name}</li>
)}
</ul>
)
} else {
children = <p>No items found.</p>
}
return (
<div className='list-container'>
{children}
</div>
)
VUE
<template>
<div class="list-container">
<ul v-if="items.length">
<li v-for="item in items" :key="item.id">
{{ item.name }}
</li>
</ul>
<p v-else>No items found.</p>
</div>
</template>
Conditional rendering - Vue
CSS React
Postscss + Modules
import s from './style.css';
const classNames = cs(s.interfaceFilterLists, {
[active]: someCondition === index
});
return (
<li
key={type.abbreviation}
className={classNames}
>
<button>{type.title}</button>
</li>
);
CSS VUE
Block scoped CSS
<style scoped>
.active {
background-color: '#000000'
}
</style>
<template>
<div v-bind:class="{ active: isActive }">
</div>
</template>
А как же React Native ?
Аналог React Native, работающий на
Vue.js
Почему Плохо
▸ Очень слабо развитая
экосистема
▸ Китайское коммьюнити
Где можно уже успешно применять
▸ Админки и внутренние ресурсы
▸ Домашние проекты
▸ MVP
Вопросы?

More Related Content

PPTX
SubmitJS: Vue.js - make frontend developement great again. Andrii Grachov
PDF
#5 "React.js" Антон Артамонов
PDF
#11 "Отзывчивый UI без блокировки Event Loop" Денис Речкунов
PDF
React.js – intro
PDF
#6 "Изоморфный фреймворк Catberry.js" Денис Речкунов
PDF
Инновации и JavaScript
PDF
Доклад "React under the hood"
SubmitJS: Vue.js - make frontend developement great again. Andrii Grachov
#5 "React.js" Антон Артамонов
#11 "Отзывчивый UI без блокировки Event Loop" Денис Речкунов
React.js – intro
#6 "Изоморфный фреймворк Catberry.js" Денис Речкунов
Инновации и JavaScript
Доклад "React under the hood"

What's hot (20)

PDF
React Webinar Slides
PPT
Current State of Server Side JavaScript
PDF
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Антипаттерни та велосипеди в JavaScript автоматизації» ...
PDF
Современный фронтенд -- как не утонуть в море хайпа?
PDF
Артем Тритяк, Lead Front-End developer в Electric Cloud
PDF
#7 "Многообещающий JavaScript – Promises" Денис Речкунов
KEY
PDF
Фронтенд сказки, Eugene Zharkov
PDF
Фронтенд сказки
PPTX
Angular vs Angular 2 vs React. Сергей Александров
PPTX
Async Javascript
PPTX
Знакомство с WebAssembly
PDF
Бэкенд, фронтенд — всё смешалось (nodkz)
ODP
Pavel yuriychuk svg in game development
PDF
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
PDF
Алексей Фомкин, Практическое применение Web Workers
PDF
Работа со статикой в Django
PDF
Фронтенд разработка без боли
PDF
Актуальные технологии и тренды в веб-разработке
React Webinar Slides
Current State of Server Side JavaScript
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Антипаттерни та велосипеди в JavaScript автоматизації» ...
Современный фронтенд -- как не утонуть в море хайпа?
Артем Тритяк, Lead Front-End developer в Electric Cloud
#7 "Многообещающий JavaScript – Promises" Денис Речкунов
Фронтенд сказки, Eugene Zharkov
Фронтенд сказки
Angular vs Angular 2 vs React. Сергей Александров
Async Javascript
Знакомство с WebAssembly
Бэкенд, фронтенд — всё смешалось (nodkz)
Pavel yuriychuk svg in game development
HTML GL - возьмите столько FPS, сколько вам нужно, и немного эффектов в прида...
Алексей Фомкин, Практическое применение Web Workers
Работа со статикой в Django
Фронтенд разработка без боли
Актуальные технологии и тренды в веб-разработке
Ad

Similar to "Vue.js или как наконец отказаться от React" (20)

PPTX
Andrew Borisenko "Magic of Vue.js""
PDF
All you need is Vue, Nuxt is all you need | Odessa Frontend Meetup #10
PDF
JavaScript сегодня: React, Redux и новая реальность
PDF
Денис Измайлов, JavaScript сегодня: React, Redux и новая реальность
PDF
Рендеринг может больше: vue.js vs React, Андрей Солодовников
PDF
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
PDF
Оптимизация react+redux приложений | Odessa Frontend Meetup #7
PDF
React & Redux (Lazarev)
PDF
Vuejs composition API
PDF
Vue.js и его брат-близнец Vue-server.js / Андрей Солодовников (НГС)
PDF
LvivJS 2014 - Win-win c React.js
PPTX
Illya Klymov - "Vue.JS: What did I swap React for in 2017 and why?"
PDF
Александр Кашеверов — Обзор React.js
PDF
React + Flux
PDF
Изоморфный JavaScript — будущее уже здесь
PDF
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
PDF
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
PPTX
Виталий Ратушный "Vue: webcomponents"
PDF
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
PDF
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
Andrew Borisenko "Magic of Vue.js""
All you need is Vue, Nuxt is all you need | Odessa Frontend Meetup #10
JavaScript сегодня: React, Redux и новая реальность
Денис Измайлов, JavaScript сегодня: React, Redux и новая реальность
Рендеринг может больше: vue.js vs React, Андрей Солодовников
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
Оптимизация react+redux приложений | Odessa Frontend Meetup #7
React & Redux (Lazarev)
Vuejs composition API
Vue.js и его брат-близнец Vue-server.js / Андрей Солодовников (НГС)
LvivJS 2014 - Win-win c React.js
Illya Klymov - "Vue.JS: What did I swap React for in 2017 and why?"
Александр Кашеверов — Обзор React.js
React + Flux
Изоморфный JavaScript — будущее уже здесь
JSLab. Дмитрий Смолин, Дмитрий Филипенко. "React и Webpack с помощью кирки, л...
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Виталий Ратушный "Vue: webcomponents"
SECON'2016. Аверин Сергей, Javascript-фреймворки:
 должен остаться только один
SECON'2016. Сергей Аверин. Javascript-фреймворки:
 должен остаться только один
Ad

More from Fwdays (20)

PDF
"Mastering UI Complexity: State Machines and Reactive Patterns at Grammarly",...
PDF
"Effect, Fiber & Schema: tactical and technical characteristics of Effect.ts"...
PPTX
"Computer Use Agents: From SFT to Classic RL", Maksym Shamrai
PPTX
"Як ми переписали Сільпо на Angular", Євген Русаков
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
PDF
"Validation and Observability of AI Agents", Oleksandr Denisyuk
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
PPTX
"Co-Authoring with a Machine: What I Learned from Writing a Book on Generativ...
PPTX
"Human-AI Collaboration Models for Better Decisions, Faster Workflows, and Cr...
PDF
"AI is already here. What will happen to your team (and your role) tomorrow?"...
PPTX
"Is it worth investing in AI in 2025?", Alexander Sharko
PDF
''Taming Explosive Growth: Building Resilience in a Hyper-Scaled Financial Pl...
PDF
"Scaling in space and time with Temporal", Andriy Lupa.pdf
PDF
"Database isolation: how we deal with hundreds of direct connections to the d...
PDF
"Scaling in space and time with Temporal", Andriy Lupa .pdf
PPTX
"Provisioning via DOT-Chain: from catering to drone marketplaces", Volodymyr ...
PPTX
" Observability with Elasticsearch: Best Practices for High-Load Platform", A...
PPTX
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
PPTX
"Istio Ambient Mesh in production: our way from Sidecar to Sidecar-less",Hlib...
"Mastering UI Complexity: State Machines and Reactive Patterns at Grammarly",...
"Effect, Fiber & Schema: tactical and technical characteristics of Effect.ts"...
"Computer Use Agents: From SFT to Classic RL", Maksym Shamrai
"Як ми переписали Сільпо на Angular", Євген Русаков
"AI Transformation: Directions and Challenges", Pavlo Shaternik
"Validation and Observability of AI Agents", Oleksandr Denisyuk
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
"Co-Authoring with a Machine: What I Learned from Writing a Book on Generativ...
"Human-AI Collaboration Models for Better Decisions, Faster Workflows, and Cr...
"AI is already here. What will happen to your team (and your role) tomorrow?"...
"Is it worth investing in AI in 2025?", Alexander Sharko
''Taming Explosive Growth: Building Resilience in a Hyper-Scaled Financial Pl...
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Database isolation: how we deal with hundreds of direct connections to the d...
"Scaling in space and time with Temporal", Andriy Lupa .pdf
"Provisioning via DOT-Chain: from catering to drone marketplaces", Volodymyr ...
" Observability with Elasticsearch: Best Practices for High-Load Platform", A...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"Istio Ambient Mesh in production: our way from Sidecar to Sidecar-less",Hlib...

"Vue.js или как наконец отказаться от React"