2015-04-16 12 views

ответ

9
var A = React.createClass({ 
    render() { 
     return (
      <B> 
       <C /> 
      </B> 
     ); 
    } 
}); 

В приведенном выше примере, А является владелец В и С, поскольку А создает оба компонента.

Тем не менее, В является родителем С, так как С передается как ребенка B.

Более подробную информацию можно найти в documentation.

Важно провести различие между отношением между владельцем и владельцем-родителем и дочерним отношением. Владелец-владелец зависит от Реагента, а отношения родитель-ребенок - это просто тот, который вы знаете и любите от DOM.

1

Из официальной документации:

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, его дети могут быть любыми компонентами.

Смежные вопросы