#reactjs
#reactjs
Вопрос:
var MyComponentClass = React.createClass({
render: function () {
return <h1>Hello world</h1>;
}
});
ReactDOM.render(
<MyComponentClass />,
document.getElementById('app')
);
Итак, я следил за некоторыми руководствами по ReactJS, и мне трудно понять, что именно происходит под капотом React, особенно приведенный выше фрагмент кода.
Например, в чем именно заключается необходимость в методе рендеринга внутри метода createClass библиотеки React?
Как вызывается метод render при вызове ReactDOM.render?
Я попытался просмотреть документацию ReactJS, но столкнулся с той же проблемой, где нет объяснения того, что происходит под капотом. Попытался погуглить проблему, тот же результат. Вопросы, похоже, основаны на том, как это сделать, а не на том, что он на самом деле делает.
Даже если бы кто-нибудь мог указать мне в направлении нужной области документов, это бы мне очень помогло.
Комментарии:
1. Исходный код есть, так что вы можете заглянуть под капот. Я почти уверен, что большинству людей все равно, что там происходит, поэтому четкой документации нет.
Ответ №1:
Этот документ API верхнего уровня был бы хорошим началом для начинающих.
-
Необходимость в методе рендеринга:
Это требуется, когда вы использовали React.createClass.
В методе визуализации вы не можете изменять состояние компонента.
При вызове он вернет единственный дочерний элемент (например.<div>
или компонент, определенный самостоятельно) -
Как вызывается рендеринг:
По умолчанию, всякий раз, когда вызывается setState, React повторно отображает все компоненты и подкомпоненты.
Однако, если вы установите, что shouldComponentUpdate() возвращает false, метод render будет полностью пропущен.
Надеюсь, это поможет