加入直播:周四美国东部时间上午 11 点,Storybook 9 发布和 AMA

GraphiQL IDE

用于显示 GraphiQL IDE 的 Storybook 插件

在 Github 上查看

Storybook GraphiQL 插件

Storybook GraphQL 插件可在 Storybook 中显示 GraphiQL IDE,并附带示例查询。

框架支持

Screenshot

入门指南

首先,安装插件

yarn add @storybook/addon-graphql --dev

导入 setupGraphiQL 函数,并使用它创建一个带有基本 URL 的 graphiql 辅助函数。

import { storiesOf } from '@storybook/react'
import { setupGraphiQL } from '@storybook/addon-graphql'

// setup the graphiql helper which can be used with the add method later
const graphiql = setupGraphiQL({ url: 'http://localhost:3000/graphql' });

storiesOf('GraphQL Demo', module)
  .add('get user info', graphiql(`{
    user(id: "1") {
      name
    }
  }`));

提示:尝试在另一个文件中创建此辅助函数,并从该文件导入配置好的 graphiql 辅助函数

高级设置

setupGraphiQL 函数也接受一个 fetcher 参数,可用于更改 graphiql 获取数据的方式。如果未提供 fetcher 参数,它将创建一个使用 fetch API 发出请求的 fetcher。上述示例也可以使用自定义 fetcher 编写。

import { storiesOf } from '@storybook/react'
import { setupGraphiQL } from '@storybook/addon-graphql'

import { url } from './settings';

const fetcher = params => {
  const options = {
    method: 'post',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify(params),
  };
  return fetch(url, options).then(res => res.json());
};

// create the helper with a custom fetcher
const graphiql = setupGraphiQL({ fetcher });

storiesOf('GraphQL Demo', module)
  .add('get user info', graphiql(`{
    user(id: "1") {
      name
    }
  }`));
开发者
  • igor-dv
    igor-dv
  • tmeasday
    tmeasday
  • hypnosphi
    hypnosphi
  • ndelangen
    ndelangen
  • shilman
    shilman
支持
    Angular
    React
标签