React 0.13 приносит parent-based context instead of owner-based context.В чем разница между владельцем и родительским компонентом в React.js
Итак, я не могу понять разницу между владельцем и родительскими компонентами. Примеры будут оценены.
React 0.13 приносит parent-based context instead of owner-based context.В чем разница между владельцем и родительским компонентом в React.js
Итак, я не могу понять разницу между владельцем и родительскими компонентами. Примеры будут оценены.
var A = React.createClass({
render() {
return (
<B>
<C />
</B>
);
}
});
В приведенном выше примере, А является владелец В и С, поскольку А создает оба компонента.
Тем не менее, В является родителем С, так как С передается как ребенка B.
Более подробную информацию можно найти в documentation.
Важно провести различие между отношением между владельцем и владельцем-родителем и дочерним отношением. Владелец-владелец зависит от Реагента, а отношения родитель-ребенок - это просто тот, который вы знаете и любите от DOM.
Из официальной документации:
An owner is the component that sets the props of other components
Вот пример, где А является владельцем B:
var A = React.createClass({
render: function() {
return <B />;
}
});
А владелец B, поскольку B создается в-х render
функция.
Это пример, где А является родителем B:
var A = React.createClass({
render: function() {
return <div>{this.props.children}</div>;
}
});
var B = React.createClass({
render: function() {
return <span>B</span>;
}
});
React.render(
<A><B /></A>,
document.getElementById('example')
);
В этом примере, A является родителем B, поскольку А-х props.children
содержит В. Но А не имеет прямого знания о том, что его родитель B, его дети могут быть любыми компонентами.