问题标签 [graphcool]

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 投票
2 回答
1477 浏览

graphql - “枚举”的元数据值

我在名为“Listing”的模型中创建了一个字段。这里的字段是“类别”。这设置为一些值的枚举(下面的屏幕截图)。graphql 是否允许查询以获取枚举列表?

0 投票
1 回答
1213 浏览

graphql - 创建一个包含多个 ENUM 值的突变

我创建了一个模型,该模型具有一个字段,该字段采用ENUM. 如何编写允许我一次添加多个值的突变?

例如,我有一个注册突变:

我希望$attended$role接受多个值。

0 投票
1 回答
54 浏览

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

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

来自以下组件:

PhotoGrid.js

最终导入到 app.js 中:

我在这里俯瞰什么?

0 投票
2 回答
3914 浏览

facebook-graph-api - HowTo:在 GraphQL 中增加基于整数的字段的值

因此,我希望在 GraphCool 中创建一个 GraphQL 突变,它将整数字段的现有值增加预定量,作为变量传入。例如:

我该怎么做呢?

此外,我试图从 onClick 事件中触发上述过程,但收到“无法读取 null 的属性 'props'”错误消息,我怀疑 this.props.client.query:

照片.js

抛出的错误如下:

0 投票
1 回答
1033 浏览

react-native - Apollo 客户端延迟授权标头

我在 React-Native 应用程序中使用 Apollo(带有 Graph Cool)、redux 和 Auth0。我试图延迟查询和突变,直到设置标题。

idToken 存储在异步存储中,因此是一个承诺。我不能使用 redux 来传递令牌,因为这会产生循环依赖。

当用户第一次登录或令牌已过期时,在设置标头之前发送查询,这意味着我收到错误Error: GraphQL error: Insufficient Permissions在此处输入图像描述

如何延迟查询,直到找到令牌并将其添加到标头?我一直在寻找三个主要的解决方案:

  1. 添加 forceFetch: true; 这似乎是 Apollo 客户端早期实现的一部分。即使我找到了等价物,该应用程序在第一次尝试获取时仍然失败。
  2. 登录时重置商店(补水?)。这仍然是异步的,所以我看不出这会如何影响结果。
  3. 从登录本身中删除所有突变和查询,但是由于应用程序的进度,这是不可行的。

一些片段:

0 投票
1 回答
382 浏览

graphql - GraphQL:突变运行时订阅未触发

因此,我正在 Graphcool 上测试订阅,希望能对它们的工作原理进行一些澄清。

我有来自评论帖子的一对多关系:

架构

我在 Graphcool 中运行的订阅如下:

如果我在我的 React 应用程序中运行以下命令,则会触发创建的通知:

但是,如果我运行以下命令,则不会触发已删除的通知:

我在这里俯瞰什么?

0 投票
2 回答
429 浏览

meteor - 使用 graph.cool 和 Algolia 订阅 Apollo

现在我有了带有 MongoDB 地理索引的 Meteor 应用程序。

我正在使用这种发布/订阅:

我添加了一些索引,例如:

一切正常...

主要问题是:是否可以将 Meteor pub/sub + MongoDB Geo-indexes 更改为 Apollo subs + graph.cool 作为后端 + Algolia 超快速地理搜索?

我需要真正的反应,而不需要轮询或其他东西......

0 投票
1 回答
744 浏览

graphql - ApolloClient:重构 updateQueries 以使用 this.props.client.mutate

注意:由于处理突变/查询/缓存更新的过程现在由update解决,我不再使用 uodateQueries,使这个问题不再相关。

所以,我有一个从帖子到评论的一对多关系:

和一个 Root_Query,如 Apollo devTools(见附图)中所描述的:

运行 Add_Comment_Mutation 或 Remove_Comment_MutationNew:

没有正确更新响应式缓存,因此我的 UI 没有正确反映由 onClick 事件触发的任何添加/删除评论。

如何让 updateQueries 正确使用 this.props.client.mutate,因为当前尝试生成“错误:更新():$unshift 的预期目标是一个数组;未定义。” 错误(见下文):

产生的错误:

注意 - 问题似乎与

它作为“未定义”返回,而不是作为对象返回。

在此处输入图像描述

0 投票
1 回答
1247 浏览

graphql - GraphQL 错误:字段“removeFromPostsOnComments”上的未知参数“已删除”

所以,我从帖子到评论有一对多的关系:

并希望运行一个突变,除了删除帖子和评论之间的连接外,还尝试将“评论”上的“已删除”字段更新为真:

但是当我运行突变时,我收到以下错误消息:

正如在此处向我解释的那样,仅删除了帖子和评论之间的链接,而不是实际的“评论”记录本身。所以我的想法是,由于记录没有被删除,为什么我不能更新“已删除”字段?

我希望这样做以触发订阅,该订阅正在监视更新的字段“已删除”。

生成的变异输出如下:

如图所示,“已删除”肯定包含在“评论”我的 GraphCool 架构中:

在此处输入图像描述

0 投票
1 回答
307 浏览

graphcool - 仅允许用户在 Graphcool 权限中编辑自己的内容

我已按照在https://www.graph.cool/上设置介绍项目的步骤进行操作。在项目的权限部分,我可以查看和编辑权限,例如Posts

Graphcool 帖子权限

单击显示Everyone可以Edit Data用于帖子的行时,会出现一个对话框。在那里我可以编辑权限,以便只有经过身份验证的用户可以编辑帖子:

更新编辑帖子的权限

但是,如何制定规则,让用户只能编辑自己的帖子,而不能编辑其他用户创建的帖子?