问题标签 [react-apollo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
420 浏览

node.js - 如何从 nodejs-api-starter 获取到 react-starter-kit

我第一次尝试 React-Starter-Kit 并且喜欢所有内置的尖端功能(特别是 apollo/graphql-client)。对我来说,任何应用程序的一个关键部分是数据库,为此我的理解是同一作者提供了 nodejs-api-starter,它设置了一个 REST 接口,用于在 localhost:5000 访问 Postgres,并在 localhost:5000/ 有一个 graphql webui图l。

到目前为止,这大约是我能够理解的设置。我稍微更改了前端代码,因此主页上加载了一个新的组件“计数器”。我需要能够创建一个新计数器,获取最新的计数器,并递增递减计数器。现在编写该组件仅输出在 5000 处从服务器检索到的“值”。

我认为我没有正确访问 5000 服务器,我是否将端口放在此url 行中?

您可以从以下位置拉下 repo:https ://github.com/Falieson/react-starter-kit-crud-counter-demo

这是我第一次设置 nodejs api 服务器,我习惯使用 MeteorJS,它内置了 MongoDB 的 pub/sub。我期待 RSK 策略(这似乎更符合行业标准?)提供的分离。

0 投票
6 回答
3034 浏览

reactjs - Apollo GraphQL 查询返回后如何更新 Redux 存储

我正在使用graphqlreact apollo 提供的 HOC 获取数据列表。例如:

我在受控单选按钮组中显示列表,默认情况下我需要选择其中一项。所选项目的id保存在 Redux 存储中。

selectedItem那么,问题是在查询成功返回后如何更新 Redux 存储(即设置)?

我想到的一些选择:

选项1

APOLLO_QUERY_RESULT我应该在我的 Redux reducer 中监听操作吗?但这有点尴尬,因为这样我就需要听两者APOLLO_QUERY_RESULTAPOLLO_QUERY_RESULT_CLIENT如果查询之前已经运行过。而且operationName道具只出现在APOLLO_QUERY_RESULT动作中而不是APOLLO_QUERY_RESULT_CLIENT动作中。所以我需要剖析每一个APOLLO_QUERY_RESULT_CLIENT动作,才能知道它是从哪里来的。难道没有一种简单直接的方法来识别查询结果操作吗?

选项 2

我是否应该分派一个单独的动作SELECT_LIST_ITEMcomponentWillReceiveProps例如(使用recompose):

选项 3

我是否应该通过注入 Apollo 客户端直接使用它,withApollo然后使用client.query(...).then(result => { /* some logic */ selectItem(...)}). 但是我会失去 react-apollo 集成的所有好处,所以不是一个真正的选择。

选项 4

查询返回后我是否应该完全不更新 Redux 存储?因为我也可以只实现一个选择器,selectedItem如果它已设置,则返回它,如果没有,它会尝试通过浏览apollo商店的一部分来派生它。

我的选择都不能让我满意。那么,我该怎么做呢?

0 投票
2 回答
381 浏览

reactjs - PreFetching 数据阿波罗

我一直在玩阿波罗并重新取回,并且有问题。

我已经实现了一个在MouseOver 上预取数据的功能,当我将鼠标悬停在那个“组件”上时,它会同时发出两个相同的请求。任何想法为什么?

网络请求

0 投票
1 回答
392 浏览

react-apollo - 在 React 应用程序中传递 Apollo Client 的推荐方法是什么?

现在我正在使用 HOC withApollo,例如:

然后在该组件中:

然后在该组件之外:

^ 但是我发现这变得非常混乱,必须将它从我的组件传递到每个外部函数中。


我不能只使用:

然后:

到处?

0 投票
0 回答
222 浏览

apollo - 在 Apollo 中使用 reducer 修改查询结果

我正在使用 Apollo 来查询 graphql 服务器并管理结果。我正在尝试向返回值添加一个字段,并将以下减速器传递给 Apollo graphql 函数”

我已经确认减速器正在返回更新的值,但是在组件中我没有看到更新的值。有没有办法更新来自服务器的响应并将其反映在本地存储中?

0 投票
5 回答
29461 浏览

javascript - GraphQL - 如何用不同的状态码响应?

我在使用 Graphql 和 Apollo Client 时遇到问题。

使用 REST 时,我总是创建不同的响应,例如 401 代码,但在这里我不知道如何做类似的行为。

当我得到响应时,我希望它转到 catch 函数。我的前端代码示例:

有谁能够帮我?

0 投票
1 回答
2973 浏览

javascript - 使用带有异步获取变量的 react-apollo 调用 graphql 查询

我有一个react组件,它显示您附近的兴趣点的地图。

我的 HOC 用于react-apollo查询这些兴趣点并将数据作为道具提供给纯 UI 组件。

我正在尝试将用户的位置从navigator.geolocation我的 graphql 查询的变量中获取。但由于导航器 API 是异步的,我似乎无法让它工作。

它看起来像这样:

coordinates始终null在我的组件内。

当我记录事情时,似乎计算了位置,但 graphql 查询和组件渲染发生在它之前。

当我们获取用户位置时,不会调用查询并且不会重新渲染组件。

可能吗 ?难道我做错了什么?

0 投票
1 回答
502 浏览

reactjs - Apollo mutate 回调中的不变违规设置状态

当我尝试在 catch 子句中使用 this.setState 时,我正在从事件处理程序调用 mutate 函数并收到 Invariant Violation 错误。

0 投票
1 回答
54 浏览

reactjs - 未捕获的错误:AllPostsComments.render():必须返回有效的 ReactComponent

因此,我在尝试从 GraphCool 后端获取数据时收到以下错误消息:

来自以下组件:

PhotoGrid.js

最终导入到 app.js 中:

我在这里俯瞰什么?

0 投票
1 回答
705 浏览

reactjs - 如何向 Apollo GraphQL 请求添加额外的请求正文值?

我将 Apollo 与 Scaphold.io 服务一起使用,并且为了向该服务写入 blob,我需要能够向请求正文添加其他选项。

完整的 Scaphold 示例可以在这里找到:https ://scaphold.io/docs/#uploading-files

但它做了这样的事情:

它将 blobField 添加到请求正文的位置。

基于此,我需要将 blobFieldName 属性传递给变量,然后将传递给该属性的值与 blob 添加到请求正文中。但是,使用 Apollo 我无法添加到请求正文中。我尝试了以下操作,但是当我签入网络检查器时,请求正文中没有它:

请指教。