问题标签 [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.
graphql - 为什么我的 graphql 高阶组件使用 Apollo 客户端触发选项 11 次?
我在指数反应本机应用程序中使用 apollo 客户端,并注意到 graphql 选项方法运行了 11 次,这是为什么呢?这是错误还是性能问题?这正常吗?它是否也运行了 11 次查询?
查看文档http://dev.apollodata.com/react/queries.html中的示例
通常,查询的变量将由包装组件的 props 配置;无论在您的应用程序中使用该组件的任何位置,调用者都会传递参数。所以 options 可以是一个获取外部组件 props 的函数(按惯例为ownProps):
默认情况下,graphql 将尝试从 ownProps 的查询中提取任何缺失的变量。所以在我们上面的例子中,我们可以使用更简单的 ProfileWithData = graphql(CurrentUserForLayout)(Profile);。但是,如果您需要更改变量的名称,或计算值(或只是想更明确地了解事物),则可以使用 options 函数。
graphql - Apollo 客户端给了我一个错误“商店已经包含一个 id”——这是什么意思?
在一个反应原生项目中,我正在创建一个对象,然后将屏幕重定向到新创建的对象的详细信息页面,我收到此错误:
可能的未处理承诺拒绝(id:0):网络错误:存储错误:应用程序尝试写入没有提供 id 的对象,但存储已包含此对象的 XYZ id。
查看数据库,我看到该项目已在上一步中正确创建。通过列表导航到同一屏幕和项目(不是在创建和重定向之后)似乎工作正常。我是否必须等待或以某种方式为阿波罗商店设定某种时间才能保持正确?
我正在使用标准的 apollo 客户端 @graphql 绑定/包装
gql:
这是一个代码片段
forms - 在带有 Apollo GraphQL 的 React-Meteor 中使用 Vazco “Uniforms”
我刚开始在我的Meteor Mantra Kickstarter中使用Vazco “制服”,但我遇到了一个难以解决的难题:
textarea
例如,我的表单上所有其他类型的字段都是不可写的。
我可能会犯一些错误,导致我无法写入表单中的字段吗?
它的 JSX 看起来像这样:
我这样设置桥接定义:
各种console.log( "..." )
说明显示:
... 然后 ...
... 然后 ...
... 然后 ...
如果这里的列表不足,请告诉我。
graphql - react-apollo 的动态变异文档
我需要动态更改我的突变文档,以便能够在单个突变中创建多个项目。所以我有这个函数createOrderName
,它需要一个整数并能够创建正确的突变文档。例如。createOrderName(2)
得到
我的容器如下。
现在我怎样才能将一个整数值传递给这个突变,以便它创建正确的突变文档?目前它修复为 2,但我需要它更灵活,以便我可以创建任意数量的项目......
react-apollo - 使用 apollo 客户端如何设置突变 refetchQueries 的加载状态?
因此,我使用 apollo 客户端将突变添加到对象列表中。假设我有一个活动,我正在添加参与者,并且我正在使用 refetchQueries 在详细信息屏幕上与参与者一起获取刷新的活动。不幸的是,在此重新获取期间我没有获得data.loading == true
状态,这使得用户很可能会反复点击该加入参与者按钮。
javascript - 将图像上传到 GraphQL 服务器
我正在使用react-dropzone和graphql-server-express-upload在 GraphQL Apollo 中上传图像。在我的客户端中,文件如下所示:
但是在服务器中,当我记录它时,它看起来像这样:
我正在按照graphql-server-express-upload自述文件中的说明进行操作,但到目前为止还没有运气。如何获得完整的图像?
react-apollo - updateQuery 在客户端订阅中应该做什么 - 道具没有更新
使用带有 graphql 订阅的 apollo 客户端,我在示例中跟随,但我没有看到来自订阅事件的 updateQuery 更新我的属性。updateQuery 的返回值是否应该自动处理 - 还是我应该自己将其保存到商店?
graphql - 如何在一个突变中创建嵌套节点?
嗨,我正在尝试在我的https://www.graph.cool/数据库上写入带有突变的数据。我的项目是一个 React 网络应用程序,我使用 Apollo 作为 graphql 客户端和 graphql-tag npm 包作为模板文字解析器。
问题是我不知道如何为嵌套数据的正确突变安排 gql 模板字符串。我的架构看起来像这样,例如注意“公司”类型的“地址”字段是“地址”对象类型的数组。
例如,我想在一个突变中同时创建一家新公司、它的新所有者和多个地址。对于地址,我还需要创建一个新联系人。
node.js - 主机:本地主机。不在证书的替代名称中
在进行服务器端渲染时出现以下错误。
注意:-我正在使用 react、redux、apollo-client(GraphQL) 和 ExpressJS(NodeJS)。我向其发出请求的 API 服务器位于另一个域中,我无法对其进行任何更改。
在使用客户端渲染时,我没有遇到任何困难,一切都按预期工作,但是在进行服务器端渲染时,我遇到了上述错误。
所以我在我的服务器上尝试了以下方法,但仍然没有运气。
添加自签名证书
在 https 选项中添加 'rejectUnauthorized':false。
有没有办法绕过证书验证,以便我的快速服务器可以向另一个域上具有有效证书的 API 服务器发出请求?
我仍然有点不确定是否可以通过在我的最后(在我的快速服务器上)进行任何更改来修复它。
请让我知道这方面的任何见解。
reactjs - 在 componentWillLoad 上 React Apollo 触发查询
我希望能够使用 Apollo 查询和突变设置我的 Container,并随意触发它们(而不是在 Container 导出时)。突变很容易,但由于某种原因,我无法弄清楚查询(带有参数)。这是我所拥有的:
此时它抱怨没有id
在导出调用的底部传递变量graphql
。我怎样才能打败它与突变相同?我从 中获取一个函数并使用参数export graphql
随意调用它。variables
如何以相同的方式设置查询?
谢谢