Я новичок в graphQL, и недавно мне сказали его изучить.
Я хочу получить информацию из одного из моих запросов, и я успешно получил полезную нагрузку для возврата в моем файле аутентификации, но я не могу получить данные полезной нагрузки в одном из моих других файлов.
Как я могу получить доступ к данным полезной нагрузки getUsersForMyProviderAccount в моем файле users.js? Если вы загляните внутрь componentDidMount, он вызывает запрос graphQL.
Редактировать: Таким образом, данные уже хранятся в состоянии избыточности. Все, что мне нужно сделать, это получить его с помощью селектора. Но когда я пытаюсь утешить его, мне возвращается функция.
export const selectUsersForProviderAccounts = () =>
createSelector(selectDomain(), store => {
return store.usersForProviderAccounts || {};
});

файл auth.js
export function getUsersForMyProviderAccount(params) {
const { provider = {} } = params;
const query = `
query {
getUsersForMyProviderAccount(providerId: ${provider.id}) {
id
firstName
lastName
emailAddress
userName
}
}
`;
return dispatch => {
dispatch(fetchingProviderInProgress());
return ApolloService.query({ query })
.then(response => {
const { getUsersForMyProviderAccount } = response.data;
console.log(getUsersForMyProviderAccount);
dispatch(
getUsersForMyProviderAccountSuccess({
payload: getUsersForMyProviderAccount,
provider
})
);
dispatch(resetAppMessages());
console.log(getUsersForMyProviderAccount);
return getUsersForMyProviderAccount;
})
.catch(error => {
dispatch(getUsersForMyProviderAccountFailure());
// Need to throw this error so that the callee (react component) can use this error in it's own catch block
throw error;
});
};
}
user.js
componentDidMount() {
const {
getUsersForMyProviderAccount = () => {},
getUser = () => {},
providerAccount = {}
} = this.props;
this.props.form.validateFields((err, values) => {
getUser({ providerId: providerAccount.id, ...values });
getUsersForMyProviderAccount();
});
}
Как я импортировал и экспортировал в файл users.js
импорт
import {
getUsersForMyProviderAccount,
fetchUsers
} from "../../../stores/Provider/actions";
экспорт
const mapDispatchToProps = dispatch => ({
getUsersForMyProviderAccount: () => dispatch(getUsersForMyProviderAccount())
});
const WrappedUsersList = Form.create()(UsersList);
export default connect(
mapStateToProps,
mapDispatchToProps
)(WrappedUsersList);