我有这个休息的应用程序可以获得这样的数据,还有用于redux的thunk + promise中间件:
export const fetchVenues = () => ({
type: 'FETCH_VENUES',
payload: axios.get('http://localhost:3000/mock/venues'),
});
来自此的数据进入商店,组件使用从那里获取的数据。
我可以在"有效载荷"中交换其余请求。用graphql查询还是什么?
令我困惑的是Redux说:"数据存在于商店中,只能通过操作来改变,但Apollo会将数据直接绑定到组件上。 我已经制作了一个GraphQL API,在graphiql devtool中运行得很好,但我对阅读this article后客户端的处理方式感到有些困惑。
答案 0 :(得分:3)
我的理解是,在内部,apollo使用redux。基本上它使您将查询与组件并置,并将相关数据+函数注入(连接)为props。它还通过在请求完成时更新缓存/存储来为您管理商店。
你可以看到ApolloProvider是类固醇的redux提供者:https://github.com/apollostack/react-apollo/blob/01425b3df5f05e7f389b36f3385433c89a39977b/src/ApolloProvider.tsx
我希望这有助于你的理解。