Mongodb 如何使React订阅功能成为被动的?

Mongodb 如何使React订阅功能成为被动的?,mongodb,meteor,reactjs,Mongodb,Meteor,Reactjs,我正在尝试使用React和mongo为我的Meteor应用程序实现分页。我通过向订阅函数传递limit prop来实现这一点,如下所示: export default class BookListTable extends TrackerReact(React.Component) { constructor(props) { super(props); var limit = this.props.LimitProp limit = parseInt(limit) || 5; this.st

我正在尝试使用React和mongo为我的Meteor应用程序实现分页。我通过向订阅函数传递limit prop来实现这一点,如下所示:

export default class BookListTable extends TrackerReact(React.Component) {

constructor(props) {
super(props);
var limit = this.props.LimitProp
limit = parseInt(limit) || 5;
this.state =   {
subscription: {
booksData: Meteor.subscribe("allBooks", {limit: limit})
}
}
///// rest of component
这在react组件第一次渲染时效果很好,但是当我更新道具时,没有任何变化。我希望组件使用更新的limit属性重新渲染-但是这不会发生。我错过了什么


任何与分页相关的信息都将不胜感激

更新属性LimitProp时,组件会重新呈现,LimitProp已更改,但不会再次调用构造函数。您只需将LimitProp的值复制到limit,然后在创建组件时使用它,因此状态(SUScript)在更改时不会更新。我认为您应该使用组件didmount


更新属性LimitProp时,组件重新呈现,LimitProp已更改,但不会再次调用构造函数。您只需将LimitProp的值复制到limit,然后在创建组件时使用它,因此状态(SUScript)在更改时不会更新。我认为您应该使用组件didmount