2016-12-30 3 views
0

Я создаю реагировать главную страницу, которая рендеринг две реакции компоненты, какВызов Multiple компонента в том же странице в React.js

render() { 
    return (
     <Header />    
     <Test /> 
    ); 
} 

Заголовок оказывает простой статический content.In тест Я зову внешний API с помощью Redux на странице загрузки страницы в

componentWillMount() { 
    if (this.props.onPageLoadTest) { 
     this.props.onPageLoadTest(); 
    } 
} 
render() { 
    const { data } = this.props; 
    return (
     <div> 
      { 
       data.map((a) => (

        <div key={a.id}>{a.id} 

        </div> 

       )) 
      } 
     </div> 
    ); 
} 

Использование реквизита Я показываю содержание в Test component.Header и испытания работают отлично, когда я делает их отдельно.
Когда я пытаюсь объединить, отображается только заголовок, но Test не может извлекать данные из API.

+0

Помогает? http://stackoverflow.com/questions/33922015/reactjs-how-create-two-or-more-components-in-same-page –

+0

Если я добавлю что-нибудь статичное в Test, оно работает, но «данные», которые исходят из API становится нулевым. –

+0

Показать свой «главный» компонент здесь –

ответ

2

Вы не можете сделать что-то вроде этого:

render() { 
    return (
     <Header />    
     <Test /> 
    ); 
} 

может быть только одна разметка в return из render()

, если вы хотите, чтобы сделать заголовок и тестирование вместе здесь, вы должны оберните их одной разметкой, например:

render() { 
    return (
     <div> 
      <Header />    
      <Test /> 
     </div> 
    ); 
}