meteor - 如何访问CreateContainer中的原始props?

标签 meteor reactjs meteor-react

我有一个非常简单但可怕的问题。

比方说,我有一个由 createContainer 包装的 React 组件(称为 List):

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。这很奇怪,但我做不到! createContainer 内的 this 上下文与 List 内的 this 不同。

谁知道如何实现这一点?

最佳答案

作为其第一个参数,createContainer 应该接收一个以 props 作为参数的函数。所以你需要这样做:

export default createContainer(props => {
  Meteor.subscribe('ListItems', props.activeListId);
  return {
    ...
  }
}, List);

关于meteor - 如何访问CreateContainer中的原始props?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38909926/

相关文章:

MongoDB 检查属性是否存在(以及子属性)

javascript - 仅在一个页面上关闭导航栏图标

javascript - React Js axios 设置状态和 self 不工作

reactjs - 如何使用 craco 为 Jest 设置别名

javascript - HammerJS 与 Meteor 和 ReactJS 集成

javascript - React - 为什么输入字段仍然是只读的(即不可编辑),即使我已经添加了 onChange?

javascript - MeteorJS 不会停止创建启动文件

javascript - 如何在没有帮助的情况下更新 Meteor 中的 div?

javascript - 在回调中获取 Meteor.subscribe

javascript - 无法设置 TEST_BROWSER_DRIVER 环境变量 Windows 10 Meteor