對於React/Redux構建中的數據流,我還是很困惑。當我在「我的應用程序」中工作時,我感覺相當舒適,但我無法弄清楚如何將數據從服務器傳遞到我的應用程序?React/Redux將道具傳遞給主要組件
我有反應-app.php文件與article#main-content
元素,這是我的應用程序的基本元素。我想傳遞一些產品的元素信息。
我該怎麼做?
我想給支持productName,但我不知道如何從反應中訪問它。
我的猜測是來自reducer ......但是如何?也許我不應該信賴article#main-content
並通過變量在$_GET
參數中作出反應?
反應-app.php
<link rel="stylesheet" type="text/css" href="/lines-configurator/build/style.css" media="screen"/>
<script async type="text/javascript" src="/lines-configurator/build/bundle.js"></script>
<article id="main-content" productName="My Product">
</article>
App.js:
import React from 'react';
import {render} from 'react-dom';
import {createStore} from 'redux';
import {Provider} from 'react-redux';
import reducer from './reducers/index';
import BoardConfig from './containers/BoardConfigContainer';
import BoardProduct from './containers/BoardProductContainer';
const store = createStore(reducer, window.devToolsExtension && window.devToolsExtension());
render(
<Provider store={store}>
<div>
<BoardConfig />
<BoardProduct />
</div>
</Provider>,
document.getElementById('main-content')
);
BoardProductContainer.js
import {connect} from 'react-redux';
import BoardProduct from '../components/BoardProductComponent';
export default connect(
function mapStateToProps(state) {
return {
};
},
function mapDispatchToProps(dispatch) {
return {};
}
)(BoardProduct);
BoardProductComponent.js
import React from 'react';
export default function() {
return();
}
個
BoardProductReducer.js
import * as types from '../constants/constants';
import Immutable from 'immutable';
const initialState = Immutable.Map({});
export default function boardReducer(state = initialState, action) {
switch (action.type) {
default:
return state;
}
}
我覺得不使用ajax請求非常糟糕,但我會使用全局窗口值。 :D非常感謝。 – Michal