wie und Wann ein Anruf reagieren Komponente Methoden nach Zustand zu ändern, von redux

In einem einzigen reagieren Komponente ein Benutzer auf eine Schaltfläche klickt, => das ruft eine Methode => löst eine Aktion aus => async Holen => reducer updates state => Komponente erhält neue Requisiten.

zurück in die ursprüngliche Komponente, die der Auslöser für die Aktion, die ich verwendet haben:

componentWillReceiveProps(nextProps){
    if(nextProps.someProp !== this.props.someProp){
        //ok new prop is here
        this.someMethod(nextProps.someProp);
    }
}

Werde ich über diese in der richtigen Weise?

Es scheint nur etwas klobig und fast wie ein callback-Mechanismus vom Benutzer-Aktion oder Zustandsänderung. Es macht einfach nach dem logischen Ablauf der härter-Komponente einmal gibt es ein paar von diesen, ich habe eine Komponente, mit 3 von diesen und denke schon es ist nicht so einfach zu Grunde geht, insbesondere, wenn Sie Teil eines zusammenhängenden flow a > b > c . Und ich landete mit dieser Art der Sache:

componentWillReceiveProps(nextProps){

    if(this.patchJavaScriptWillLoad(nextProps)){
        this.createPatchInstance();
        //method fires an action which will also result in state change that triggers the below.
    }

    if(this.patchInstanceWillBeReady(nextProps)){
        this.startPatchAudio(nextProps.webAudioPatch.instance);
        //method fires an action which will also result in state change that triggers the below.
    }

    if(this.patchParametersWillChange(nextProps)){
        this.updateWebAudioPatchParameters(nextProps.webAudioPatchParameters);
    }
}

//abstracted away if conditions to make componentWillReceiveProps more readable. 

Aber ist dies, wie es getan werden sollte, oder ist das ein symptom der sich nicht bewegt, genug Logik um den action-Machern?

  • Nicht wissen, die Besonderheiten Ihrer Funktionen, die es wäre schwer zu beurteilen, aber es fühlt sich, dass Sie Ihre callback-Logik bewegt werden kann, um den action-Machern, vor allem, wenn Sie mit redux-thunk.
  • componentWillReceiveProps ist immer veraltet. Nachschlagen getDerivedStateFromProps
InformationsquelleAutor njorlsaga | 2016-07-25
Schreibe einen Kommentar