2017-04-17 12 views
0

Ich bin neu in react, ich möchte eine function in einer anderen function zum Beispiel anrufen ich muss componentWillReceiveProps in componentWillMount anrufen? Wie geht das?Wie componentWillReceiveProps in ComponentWillMount aufrufen?

import React from 'react' 
class App extends React.Component { 
    componentWillMount() { 
    enter code here 
    } 
    componentWillReceiveProps(nextProps) { 
    console.log(nextProps) 
    } 
    render() { 
    return(
     <div> 
     <h>hiiiiii</h1> 
     </div> 
)} 
} 
+1

Warum müssen ** Sie ** anrufen? Der [Komponentenlebenszyklus] (https://facebook.github.io/react/docs/react-component.html#the-component-lifecycle) ruft es für Sie auf. –

+0

weil redux nicht aufrufen component erhalten requisiten wenn die vorherigen daten gleich –

+1

Wenn die requisiten nicht ändern, dann warum müssen Sie es nennen? Der ganze Sinn der Lifecycle-Funktionen besteht darin, Sie in bestimmte Teile des Renderprozesses einzubinden. Wenn sie nicht angerufen werden, gibt es einen guten Grund und der Versuch, sie anzurufen, scheint die falsche Herangehensweise zu sein. Vielleicht sollten Sie versuchen zu beschreiben, was Sie erreichen wollen, nicht was Sie versuchen zu tun, damit wir Ihnen helfen können, einen besseren Weg zu finden. –

Antwort

1

Ich denke, was Sie besser, ein Verfahren zu schaffen, tun würde, in dem Sie die Operation wollen innerhalb der componentWillReceiveProps und componentWillMount diese Methode auszuführen anzurufen.

import React from 'react' 
class App extends React.Component { 
    constructor(props){ 
     super(props); 
     this._myMethod=this._myMethod.bind(this); 

    } 
    componentWillMount() { 
     this._myMethod(this.props); 
    } 
    componentWillReceiveProps(nextProps) { 
     this._myMethod(nextProps); 
    } 
    _myMethod(props){ 
     console.log(props); 
    } 
    render() { 
     return(
      <div> 
       <h>hiiiiii</h1> 
      </div> 
     )} 
} 
Verwandte Themen