【发布时间】:2017-03-21 21:13:59
【问题描述】:
我不知道我做错了什么,但我无法通过更改变量重新获取新范围。
这是我的中继容器代码的一部分(最初运行良好并获取前 5 个结果):
export const Account = Relay.createContainer(_Account, {
initialVariables: {
activities: 5
},
fragments: {
account: () => Relay.QL`
fragment on NodeInterface {
id
... on Member {
activities(first: $activities) {
totalCount
edges {
node {
id
}
}
}
}
}
`
},
});
这里是 React 组件的一部分,它改变了继电器变量:
export class _Account extends React.Component {
constructor(props) {
super(props);
this.state = {
activities: 5
};
}
loadMoreActivities(e) {
e.preventDefault();
this.setState((state,props) => {
const next = state.activities + 5;
this.props.relay.setVariables({
activities: next
});
return { activities: next }
});
}
render() {
return (
<div>
<div>{ this.state.activities.toString() } - { this.props.relay.variables.activities.toString() }</div>
<ProfileActivityList
activities={this.props.account.activities}
loadMore={this.loadMoreActivities.bind(this)} />
}
</div>
);
}
}
【问题讨论】: