我有一个非常简单和可怕的问题。
假设我有一个List
包装的React组件(称为createContainer
):
class List extends Component {
render() {
return (
...
);
}
}
export default createContainer({
...
}, List);
List
有一个来自父级的 Prop :activeListId
。我使用
createContainer
订阅,但是我需要在该订阅中传递一个参数。该参数为activeListId
值。export default createContainer({
Meteor.subscribe('ListItems', this.props.activeListId);
return {
...
}
}, List);
因此,我需要访问
createContainer
代码内的原始组件的props。太奇怪了,但是我做不到! this
中的createContainer
上下文与this
中的List
不同。谁知道如何做到这一点?
最佳答案
作为第一个参数,createContainer
应该接收一个以props
作为参数的函数。因此,您需要执行以下操作:
export default createContainer(props => {
Meteor.subscribe('ListItems', props.activeListId);
return {
...
}
}, List);