我正在尝试使用'connect'从模板缩减器中获取值
我面临以下错误:
未捕获的ReferenceError:未定义ReservationCard
以下是jsfiddle中的整个代码。
提供以下代码段:
export default React.createClass({
propTypes: {
value: React.PropTypes.object.isRequired,
profile: React.PropTypes.object.isRequired,
SPORTSDetails: React.PropTypes.shape({
error: React.PropTypes.object,
SPORTSId: React.PropTypes.number,
SPORTSName: React.PropTypes.string,
SPORTSAmount: React.PropTypes.number,
SPORTSDate: React.PropTypes.string,
isRetrieving: React.PropTypes.boolean
}),
onEdit: React.PropTypes.func.isRequired
},
displayName: 'ReservationCard',
})
export default connect(state => ({
profile: state.template.profile,
}), null, null, {
withRef: true // allows parent to access component functions
})(ReservationCard);
答案 0 :(得分:1)
导出默认仅适用于一个属性。 (您可以从文件中导出一个主要值。其他所有内容都必须命名)
您必须定义组件然后再使用。
您现在的方式displayName
尚未与组件相关联。导出的React.createClass
是。
因此,您可以在一个地方定义它并将其与连接功能一起使用
let ReservationCard = React.createClass({
propTypes: {
value: React.PropTypes.object.isRequired,
profile: React.PropTypes.object.isRequired,
SPORTSDetails: React.PropTypes.shape({
error: React.PropTypes.object,
SPORTSId: React.PropTypes.number,
SPORTSName: React.PropTypes.string,
SPORTSAmount: React.PropTypes.number,
SPORTSDate: React.PropTypes.string,
isRetrieving: React.PropTypes.boolean
}),
onEdit: React.PropTypes.func.isRequired
},
displayName: 'ReservationCard',
})
export default connect(state => ({
profile: state.template.profile,
}), null, null, {
withRef: true // allows parent to access component functions
})(ReservationCard);