2016-08-23 2 views
0

У меня есть основной JS файл, скажем:Реагировать перевождь поставщик внук

import React from 'react'; 
import ReactDOM from 'react-dom'; 

import {Provider} from 'react-redux'; 
import {store} from './store.js'; 
import {App} from './app.js' 

ReactDOM.render(<Provider store={store}><App /></Provider>,  document.getElementById('content')); 

И мой App.js выглядит следующим образом:

import React from 'react'; 
import { connect } from 'react-redux'; 
import { Proba } from './proba.js' 

export class App extends React.Component 
{ 
    constructor() 
    { 
     super(); 
    } 

    render() 
    { 
     return (<div><button>Success</button><Proba /></div>); 
    } 
} 

function mapStateToProps(store) 
{ 
    return { 
     a: 'ok' 
    }; 
} 

function mapDispatchToProps(dispatch) 
{ 
    return {}; 
} 

export default connect(mapStateToProps, mapDispatchToProps)(App) 

Как я могу добраться до магазина из компонента Proba ? Я могу получить его в приложении, но не знаю, как я могу передать его дочерям.

Я попытался следующим, но не работает, я все еще получаю пустой объект в моем proba.js:

import React from 'react' 
import { connect } from 'react-redux'; 

export class Proba extends React.Component 
{ 
    constructor(props) 
    { 
     super(props); 
     console.log(this.props); 
    } 


    render() 
    { 
     return <p>{this.props.a}</p>; 
    } 
} 

function anotherMapStateToProps(store) 
{ 
    return { 
     a: 'ok' 
    }; 
} 

function anoterMapDispatchToProps(dispatch) 
{ 
    return {}; 
} 

export default connect(anotherMapStateToProps, anoterMapDispatchToProps)(Proba) 

ответ

0

точно так же, как вы делали для App. connect() и выберите значения магазина, которые вы хотели бы передать в компонент в качестве реквизита.

export default connect(anotherMapStateToProps, anoterMapDispatchToProps)(Proba) 
+0

Я попробовал, обновил свой вопрос. В моем приложении app.js ничего не изменилось, не так ли? –

Смежные вопросы

 Смежные вопросы