2017-04-24 4 views
-1

Ich muss Wert in Requisiten setzen.Wie setze ich Werte in Requisiten, um eine andere Komponente zu verwenden?

class Edit extends Component { 
    onClick() { 
     this.props.userid('5d8d854c8d8dv8'); 
    } 
    render() { 
     return (
     <button className="btn btn-success" onClick={this.onClick.bind(this)}>Add</button> 
    )} 
} 

Above Code verursacht einen Fehler

this.props.userid ist keine Funktion

Als ich this.props trösten ich userid: '' bin immer. Ich muss Requisiten onClick ändern.

+0

die Dokumentation lesen, sehen einige Intros – webdeb

+0

'userid' ein String ist, nicht funktionieren. – elmeister

+0

ja ... dann, wie ich meinen Wert darin setze –

Antwort

0

Sie haben nicht die Dokumentation richtig gelesen ..

In der Mutterkomponente (vorausgesetzt, Benutzer-ID ist ein Zustand), erstellen Sie eine Funktion

onUserIDChange(newUserId){ 
     this.setState({ 
     userID: newUserId, 
     }); 
} 

und dann diese Funktion übergeben als Stütze auf Ihre bearbeiten Komponente.

<Edit onUserIDChange = {onUserIDChange} userId={this.state.userID} /> 

Dann wird Ihr onClick Methode wird

onClick() { 
     this.props.onUserIDChange('5d8d854c8d8dv8'); 
} 
Verwandte Themen