SportObzor.Ru
 Главная    Добавить в избраное   Спортивные flesh игры он-лайн   Спортивные результаты On-line   Карта сайта 
Главное меню
Новости спорта
Меценаты

 

 

 



Что такое react js live

Спортивный праздник

Пытаясь разобраться с библиотекой от Facebook ReactJS и продвигаемой той же компанией архитектурой "Flux", наткнулся на просторах интернета на две занимательные статьи: "ReactJS For Stupid People" и "Flux For Stupid People". Лично я люблю смотреть видео уроки платные тут hackinfo.online и узнаю много нового.

 

TL;DR В течении долгого времени я пытался понять, что такое React и как он вписывается в структуру приложения. Это статья, которой мне в свое время не хватало.

 

Чем отличается React от Angular, Ember, Backbone и других? Как управлять данными? Как взаимодействовать с сервером? Что, черт возьми, такое JSX? Что такое "component"?

 

React часто упоминают в одном ряду с другими javascript фреймворками, но споры "React vs Angular" не имеют смысла, потому что это не сопоставимые вещи. Angular — это полноценный фреймворк (включающий и уровень представления). React — нет. Вот почему React вызывает столько непонимания в развивающемся мире полноценных фреймворков — это только представление.

 

React дает вам язык шаблонов и некоторые callback-функции для отрисовки HTML. Весь результат работы React — это HTML. Ваши связки HTML/javascript, называемые компонентами, занимаются тем, что хранят свое внутреннее состояние в памяти (например: какая закладка выбрана), но в итоге вам просто выплевывается HTML.

 

Разумеется, вы не можете построить полно функционирующее динамическое приложение только с React. Почему, мы рассмотрим позже.

 

Плюсы

После работы с React, я увидел три очень важных преимущества.

 

1. Вы всегда можете сказать, как ваш компонент будет отрисован, глядя на исходный код.

Это может быть важным преимуществом, хотя это ничем не отличается от шаблонов Angular. Давайте воспользуемся примером из реальной жизни.

 

Скажем, вам нужно изменить заголовок вашего сайта на имя пользователя после логина. Если вы не используете какой-либо MVC фреймворк, вы можете сделать что-то вроде:

 

<header>  

   <div class="name"></div>

</header> 

 

 

$.post('/login', credentials, function( user ) {

   // Modify the DOM here

    $('header .name').show().text( user.name );

});

 

По опыту могу сказать, что этот код испортит жизнь вам и вашим коллегам. Как производить отладку? Кто изменяет заголовок? Кто имеет доступ к заголовку? Кто определяет видимость? Манипуляция с DOM так же плоха, как оператор GOTO в логике вашей программы.

 

Вот как вы могли бы сделать это с React:

 

render: function() {  

    return <header>

        { this.state.name ? <div>this.state.name</div> : null }

    </header>;

}

 

 

Мы можем тут же сказать, как компонент будет отрисован. Если вы знаете состояние — вы знаете результат отрисовки. Вам не нужно прослеживать ход выполнения программы. Когда разрабатывается сложное приложение, особенно в команде, это очень важно.

 

2. Связывание javascript и HTML в JSX делает компоненты простыми для понимания.

Странное сочетание HTML/javascript может вас смутить. Нас учили не вставлять javascript в DOM (например: обработчики onclick), еще в то время, когда мы были "крошечными" разработчиками (ор: since we were wee developers). Но вы можете мне верить, работать с JSX компонентами это на самом деле замечательно.

 

Обычно вы разделяете представления (HTML) и функциональность (JavsScript). Это приводит к монолитному javascript файлу, содержащему всю функциональность для одной страницы, и вы должны следить за сложным потоком JS->HTML->JS->неприятная ситуация.

 

Связывание функциональности напрямую с разметкой и упаковка этого в портативный, автономный "компонент", сделает вас счастливее, а ваш код в целом лучше. Ваш Javasacript "хорошо знаком" с вашим HTML, так что смешивать их имеет смысл.

 

3. Вы можете рендерить React на сервере.

Если вы разрабатывает публичный сайт или приложение, и вы рендерите все на клиенте, то вы выбрали неправильный путь. Клиентский рендеринг — это причина, почему SoundCloud работает медленно, и почему Stack Overflow (используя только серверный рендеринг) работает так быстро. Вы можете рендерить React на сервере, и вы должны этого делать.

 

Angular и другие поощряют использование PhantomJS для рендеринга страницы и предоставления ее поисковым движкам (основываясь на user-агенте) или использование платных сервисов. ТЬФУ!

 


29-06-2019, 17:32 Спортивное обозрение
 

Вы читали: Что такое react js live.

Предлагаем Вашему вниманию другие новости по теме:

Русское ТВ доступно в США
Статья о том, как проще и дешевле всего смотреть русское телевидение в Чехии, Израиле, Германии, Америке, Таиланде и других странах.

Возможности и преимущества онлайн-трансляции
Слышали о том, что в социальных сетях популярна новая тенденция — так называемый лайфстриминг, онлайн-трансляции или потоковые видео (Streaming Video)? Он рассчитан на категорию людей, которые боятся "что-то упустить", так называемые FOMO (fear of missing out). Где популярны такие трансляции?

Бесплатный движок
Сегодняшней статьёй я открываю долгожданный (для меня, прежде всего) цикл статей, посвящённый созданию сайта с нуля на Laravel 5, в котором будут описываться все основные конструкции данного веб-фреймворка, а в конце вы получите полнофункциональный ресурс.

Выбираем хостинг серверов
Для начала давайте поговорим о том, что же вообще такое хостинг. Хостинг - услуга, оказываемая некой компанией по предоставлению вычислительных мощностей для хранения и обработки информации на соединенном с интернетом устройстве. По сути, это определение дает огромное поле для творчества, так как в

Все замечания и пожелания присылайте на sportoboz.ru@gmail.com

При цитировании интернет-сайтами обязательна гиперссылка Спортивное обозрение
               
Поиск по сайту



Меценаты


Карта сайта
Жизнь сайта