Facebook выпустил бета-версию следующей версии React, своей библиотеки JavaScript с открытым исходным кодом.
Объявление о новой бета-версии было приурочено к ReactEurope, которая прошла в Париже. Согласно сообщению в блоге Бена Альперта, одного из разработчиков, Facebook:
«По-прежнему позволяя React развиваться и вносить незначительные изменения по мере того, как API-интерфейсы продолжают успокаиваться».
React позволяет описывать то, что вы хотите отобразить, декларативно, используя компоненты и элементы, которые являются общими для пакетов, включая react-native, react-art, react-canvas и react-three. Признавая это, основной пакет React делится на два: react и react-dom.
Пакет response содержит React.createElement, React.createClass и React.Component, React.PropTypes, React.Children и другие помощники, связанные с элементами и классами компонентов. Разработчики описывают их как изоморфные или универсальные помощники, необходимые для создания компонентов.
Пакет response-dom содержит:
ReactDOM.render
ReactDOM.unmountComponentAtNode
ReactDOM.findDOMNode
В response-dom / server у нас есть поддержка рендеринга на стороне сервера:
ReactDOMServer.renderToString
ReactDOMServer.renderToStaticMarkup
Разработчики предполагают, что большинство компонентов должны будут зависеть только от пакета реакции, который является легким и не включает в себя никакой фактической логики рендеринга. Согласно сообщению в блоге:
«Для начала мы ожидаем, что люди будут рендерить компоненты на основе DOM с помощью нашего пакета react-dom, но ничто не мешает кому-то глубоко погрузиться в производительность и написать пакет awesome-fast-react-dom, который может отображать точно такую же основанную на DOM составные части. Это становится возможным благодаря отделению определений компонентов от рендеринга ».
Эта организация также прокладывает путь к написанию компонентов, которые могут совместно использоваться веб-версией React и React Native, и, хотя в настоящее время это сложно сделать, в планах сделать это проще в будущей версии, чтобы вы могли делиться React. код между вашим сайтом и нативными приложениями.
Другое важное изменение в новой версии — это отображение ссылок на компоненты DOM как на сам узел DOM. Разработчики посмотрели, что можно сделать со ссылкой на компонент DOM, и поняли, что он всегда используется как вызов для получения базового узла DOM. Промежуточный вызов теперь избыточен, а ссылка — это фактический узел DOM.