2016-09-28 6 views
0

Ich möchte reagieren Komponente von anderen Komponente. Was ist der beste Weg, es zu tun? Ich möchte keine neue Flagge auf redox store wie "sollteShowMenu" erstellen. Ich denke über statische Methode in reagieren, aber ich bin nicht Experte in reagieren.Wie reagiere ich Komponente von anderen Komponente

kann ich statische Methode wie diese verwenden und sollte ich statische Methode verwenden, ändern Sie den Komponentenstatus.

Antwort

1

Sie sollten voran gehen und diese shouldShowMenu Flagge in Ihrem redux Speicher herstellen. Sobald Komponenten auf diese Weise interagieren, handelt es sich um einen Anwendungsstatus. Zunächst scheint es übertrieben, aber sobald Sie einen Wert haben, der für alle Komponenten gilt, ersparen Sie sich viele Kopfschmerzen!

+0

Ja, danke. Ich sollte auf diese Weise vorgehen. Wussten Sie, wann wir die statische Methode in der Reaktionskomponente verwenden sollten? –

0

Sie brauchen dafür nicht redux. Sie können dazu ref verwenden. Ich hoffe es hilft!

<script src="https://unpkg.com/[email protected]/browser.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script> 
 

 
<div id="container"></div> 
 
<script type="text/babel"> 
 
//component 1 
 
    var Hello = React.createClass({ 
 
    func: function() { 
 
     console.log('I\'m inside Hello component') 
 
    }, 
 
    render: function() { 
 
     return <div > Hello World< /div>; 
 
    } 
 
    }); 
 

 

 
//component 2 
 
    var Hello2 = React.createClass({ 
 
    componentDidMount(){ 
 
    //calling the func() of component 1 from component 2 using ref 
 
    \t this.refs.hello.func() 
 
    }, 
 
    render: function() { 
 
     return <Hello ref="hello"/>; 
 
    } 
 
    }) 
 

 

 
ReactDOM.render(< Hello2/> , 
 
    document.getElementById('container') 
 
); 
 

 
</script>

Verwandte Themen