2016-05-03 11 views
0

Ich lerne Reagieren und Material-Ui/Tabelle verwenden. Ich habe eine TestTable und TestRow Klasse definiert. TestTable erstellt eine Reihe TestRows je nach this.props (nicht dargestellt) und gibt diese:Vererben oder Erstellen in render()?

return (<Table multiSelectable={true}> 
        <TableHeader enableSelectAll={true} displaySelectAll={true}> 
         <TableRow> 
          <TableHeaderColumn>Name</TableHeaderColumn> 
          <TableHeaderColumn>Description</TableHeaderColumn> 
         </TableRow> 
        </TableHeader> 
        <TableBody> {rows} </TableBody> 
       </Table>); 

Jetzt frage ich mich, wenn TestRow von TableRow erben sollte und dann irgendwie die beiden TableHeaderColumns hinzufügen oder sollte er die gesamte Reihe montieren.

render() 
    { 
     super.render() 

     // Add header columns here? Or not inherit and use what is below? 

     // return (<TableRow key={this.props.key} selected={false}> 
     //    <TableHeaderColumn>{this.props.test.name}</TableHeaderColumn> 
     //    <TableHeaderColumn>{this.props.test.description}</TableHeaderColumn> 
     //   </TableRow>); 

    } 

Antwort

0

Der bevorzugte Weg, dies in React zu tun, ist die Zusammensetzung zu verwenden. Im Allgemeinen ist es eine schlechte Idee, die Vererbung zu verwenden, wenn die Komposition funktioniert.