Статьи / JavaScript / Reactjs (документация, руководство, примеры, flux) / Справочник (Reference)


Высокоуровневое API

React


React является точкой входа фреймворка React. Если вы используете один из готовых пакетов, она доступна как глобальная переменная; Если вы используете CommonJS модули, то вы можете получить ее через require().

React.createClass
function createClass(object specification)

Создание компонента заданной спецификации. Компонент реализует render метод, который возвращает одного ребенка. Этот ребенок может иметь сколь угодно глубокую структуру детей. Единственное, что делает компоненты отличными от стандартных прототипных классов это то, что вам не нужно вызывать(писать) new перед ними. Они являются удобными обертками, которые возвращают сконструированные экземпляры (через new) для вас.

Подробную информацию смотрите тут: Спецификация компонента и жизненный цикл

React.createElement
function createElement(
string/ReactComponent type,
[object props],
[children ...]
)

Создает и Возвращает новый ReactElement заданного типа. Аргумент тип может быть либо строка "имя тега HTML" (например. "div", "span", и т.д.), или ReactComponent класс, который был создан с помощью React.createClass.

React.render
ReactComponent render(
ReactElement element,
DOMElement container,
[function callback]
)


Рендерит ReactElement в DOM внутри container, и возвращает ссылку на компонент.

Если ReactElement предварительно отрендерен в container, то будет выполнено обновление на нем и если необходимо, то будут внесены изменения в DOM, для отражения последнего компонента React.

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

Примечание:
React.render() заменяет содержимое контейнера узла тем, что вы передаете. В будущем может быть возможна вставка компонента в существующий DOM узел без перезаписи существующих детей.


React.unmountComponentAtNode
boolean unmountComponentAtNode(DOMElement container)

Удаляет примонтированный компонент React из DOM и очищает свои обработчики событий и состояние. Если ни один из компонентов не был установлен в контейнере, вызов этой функции ничего не делает. Возвращает true если компонент был демонтирован и false, если не было компонентов для отключения.

React.renderToString
string renderToString(ReactElement element)

Рендерит ReactElement в исходный HTML. Этот метод вы должны использовать только на сервере. React вернет HTML строку. Вы можете использовать этот метод для создания HTML на сервере и отправки разметки на первичный запрос для более быстрой загрузки страницы и чтобы поисковые системы сканировать ваши страницы для целей SEO.

Если вы вызовите React.render() на узле, который уже отрендерен на сервере в разметку, React сохранит его и только добавит обработчики событий, позволя иметь очень производительный случай первоначальной загрузки.

React.renderToStaticMarkup
string renderToStaticMarkup(ReactElement element)

Метод подобный renderToString, за исключением того, что не создает дополнительный DOM атрибуты, такие как data-react-id, которые React использует внутренне. Это полезно, если вы хотите использовать React как генератор статических страницы, так отбрасывая лишние атрибуты можно сэкономить много байт.

React.isValidElement
boolean isValidElement(* object)

Проверяет, является ли объект ReactElement-ом.

React.DOM
React.DOM обеспечивает удобные обертки вокруг React.createElement для компонентов DOM. Они должны использоваться только тогда, когда не используется JSX. Например, React.DOM.div(null, 'Hello World!')

React.PropTypes
React.PropTypes включает в себя типы, которые могут быть использованы с объектом компонента propTypes для проверки свойств передаваемым компонентам. Для получения более подробной информации о propTypes см. повторно используемые компоненты.

React.initializeTouchEvents
initializeTouchEvents(boolean shouldUseTouch)

Настраивает систему событий React для обработки событий прикосновения на мобильных устройствах.

React.Children


React.Children предоставляет утилиты для работы с this.props.children непрозрачной структуры данных.

React.Children.map
object React.Children.map(object children, function fn [, object context])

Вызывает fn на каждом непосредственном ребенке, содержащемся в children с this установленным в context. Если children это вложенный объект или массив, то он будет пройден: fn никогда не будет передан контейнер объектов. Если ребенок null или undefined возвращается null или undefined, а не пустой объект.

React.Children.forEach
React.Children.forEach(object children, function fn [, object context])

Тоже самое, что React.Children.map(), но не возвращает объект.

React.Children.count
number React.Children.count(object children)

Возврат общее количество компонентов в children, равное количеству раз, когда функция обратного вызова была передана map или forEach был вызван.

React.Children.only
object React.Children.only(object children)

Вернется только ребенок в children. Иначе бросается исключение (оригинал: Throws otherwise).