Когда я пытаюсь установить переменную, компонент обновляется только после завершения выборки. Вот код exapmle.React relay pendingVariables всегда null после setVariables
class RelayExample extends React.Component {
setVars() {
this.props.relay.setVariables({id: '2'});
};
render() {
console.log(this.props.relay.pendingVariables);
return (
<div>
<button onClick={this.setVars.bind(this)}>set variable</button>
</div>
);
}
}
RelayExample = Relay.createContainer(RelayExample, {
initialVariables: {
id: '1'
},
fragments: {
userStore:()=> {
return Relay.QL`
fragment on userStore {
user(id:$id){
email
}
}
`;
}
}
});
ReactDOM.render(
<Relay.RootContainer Component={RelayExample} route={new TestQuery()}/>,
document.getElementById('app')
);
Когда я нажимаю кнопку, я получаю этот результат в консоли:
Даже если я использую forceUpdate сразу после функции setVariables, я получить аналогичный результат.
setVars() {
this.props.relay.setVariables({id: '2'});
this.forceUpdate();
};
Окружающая среда - Relay.Store –