【问题标题】:How to fix "Uncaught Error: No more mocked responses for the query"如何修复“未捕获的错误:查询不再有模拟响应”
【发布时间】:2021-10-09 18:36:06
【问题描述】:

当在子组件中使用查询时,如何在 Storybook 中模拟 Apollo/GraphQL 查询?

我正在尝试在 Storybook 中呈现 nextJS 页面组件。该页面组件的子组件正在使用 GraphQL 查询。我不知道这是否应该工作,但是当我在页面组件的故事中模拟那个(孩子的)查询时,我可以在屏幕底部的类似控制台的信息部分中看到模拟的值在故事书中。

但我得到一个错误:

Uncaught Error: No more mocked responses for the query: query GetSidebarInfos($clientId: ID!, $walletId: ID!) {
  client(id: $clientId) {
    fullName
    previousLoginAt
    __typename
  }
  wallet(id: $walletId) {
    state
    allowedToInvite
    allowedToBeInvited
    __typename
  }
}

我不确定__typename 来自哪里,但我已经阅读过它,并且在模拟响应中为其提供值并没有改变任何东西。

是否可以像这样模拟嵌套查询?

【问题讨论】:

    标签: graphql apollo react-apollo storybook


    【解决方案1】:

    事实证明,问题不在于查询发生在子组件中。从测试的角度来看,这很明显,但我没有那样看。 问题是我必须确保调用查询的参数/变量与我在模拟中提供的匹配。再一次,很明显,但我只是没看到。

    【讨论】:

      猜你喜欢
      • 2019-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-18
      • 1970-01-01
      • 2020-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多