如何在React Relay中将QueryRenderer与订阅一起使用

时间:2019-07-30 16:10:24

标签: graphql graphql-js relay

我有一个使用查询来呈现其数据的组件:

// Example.js
import React from 'react';
import { QueryRenderer, graphql } from 'react-relay';

class Example extends React.Component {
  render() {
    return (
      <QueryRenderer
        environment={environment}
        query={graphql`
          query ExampleQuery($pageID: ID!) {
            page(id: $pageID) {
              name
            }
          }
        `}
        variables={{
          pageID: '110798995619330',
        }}
        render={({error, props}) => {
          if (error) {
            return <div>{error.message}</div>;
          } else if (props) {
            return <div>{props.page.name} is great!</div>;
          }
          return <div>Loading</div>;
        }}
      />
    );
  }
}

让我们现在说一下,我想在每次更新时重新呈现它(即,使用订阅而不是查询。

如何用subscription ExampleQuery($pageID: ID!)替换此查询

query={graphql`
          query ExampleQuery($pageID: ID!) {
            page(id: $pageID) {
              name
            }
          }
        `}

0 个答案:

没有答案