2017-01-19 2 views
0

Gibt es irgendeine Weise, wie irgendwelche Requisiten schicken, die mit vom Elternteil kommen, aber mit einer geänderten Requisite?An Kind senden this.props mit Änderung einer Requisite

Ich habe eine Seite, wo ich InputList Komponente Rendern bin. Und in dieser Komponente rende ich wieder InputList. Also ich sende {...this.props} mit einem Requisitenwechsel - modal. Aber wenn ich sende <InputList modal={true} {this.props}/>. Der modal Wert wird von ...this.props übernommen. so ist der Wert false anstelle von true, irgendwelche Tipps?

Sicher, es gibt eine Möglichkeit, alle Requisiten einzeln zu senden, aber ich habe viele Requisiten, also möchte ich this.props verwenden. Oder ich kann etwas wie const { modal, ...others} = this.props verwenden, aber es gibt mehr Requisiten, die ich benutze so ich habe const { modal,...,...,...,...,...} = this.props

class Page extends Component{ 
     render(){ 
     return(
       <InputList modal={false} list={...} valueA={..} valueB={..} 
        firstTitle={..} secondTitle={..} /> 
     ) 
     } 
    } 

    class InputList extends Component{ 
     render(){ 
      const {modal,list,valueA,valueB,firstTitle,secondTitle} = this.props; 
      .... 
     return(
      .... 
       <InputList modal={true} {...this.props} /> 
     ) 
     } 
    } 

Antwort

1

Wird dies für Sie arbeiten?

class InputList extends Component { 
    render(){ 
    const passProps = Object.assign({}, this.props, {modal: true}) 
    return(
     .... 
     <InputList {...passProps} /> 
    ) 
} 
+0

Danke, es funktioniert, aber ist das nur eine Lösung? –

Verwandte Themen