我正在尝试与Redux学习React。 作为入门套件,我选择了"react-redux-universal-hot-example"
我正在尝试创建一个显示一些数据的新页面。我密切关注了Widgets页面,但出于某种原因,我的页面没有显示任何数据。
这就是我所做的:
我创建了一个新容器: Outfits.js
为API文件夹添加了操作: load.js
添加了Redux模块outfits.js
它必须是我缺少的相对较小的东西,但我无法弄清楚是什么。
我的更改的整个项目在这里: https://github.com/zunperior/wear4cast
答案 0 :(得分:1)
@asyncConnect
装饰器不会替换@connect
装饰器。您正在使用asyncConnect在需要时加载数据,但没有任何内容将商店中的数据连接到组件。您需要在第3行取消注释导入连接,然后使用它将您的道具连接到redux商店。
@asyncConnect([{
deferred: true,
promise: ({store: {dispatch, getState}}) => {
if (!isLoaded(getState())) {
return dispatch(loadOutfits());
}
}
}])
@connect(
state => ({
outfits: state.outfits.data,
error: state.outfits.error,
loading: state.outfits.loading
}),
{}
)
export default class Outfits extends Component {
static propTypes = {
outfits: PropTypes.string,
error: PropTypes.string,
loading: PropTypes.bool
};
// ...
}