首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从graphql()创建的高阶组件中获取MutationResult

从graphql()创建的高阶组件中获取MutationResult可以通过以下步骤实现:

  1. 首先,确保你已经安装了GraphQL相关的依赖包,例如react-apollo
  2. 在你的组件中,使用graphql()函数将GraphQL查询或变异绑定到组件上。例如,如果你要绑定一个变异,可以这样做:
代码语言:txt
复制
import { graphql } from 'react-apollo';
import { myMutation } from './graphql/mutations';

class MyComponent extends React.Component {
  // 组件的代码...
}

export default graphql(myMutation)(MyComponent);
  1. 在组件中,你可以通过this.props.mutate来访问绑定的变异函数。这个函数返回一个Promise,它会在变异完成后解析为MutationResult对象。
代码语言:txt
复制
class MyComponent extends React.Component {
  handleMutation = () => {
    this.props.mutate()
      .then((result) => {
        // 在这里处理MutationResult对象
        console.log(result);
      })
      .catch((error) => {
        // 处理错误
        console.error(error);
      });
  }

  render() {
    // 渲染组件的代码...
  }
}
  1. MutationResult对象包含了变异的结果信息,包括dataerrorsloading等属性。你可以根据需要使用这些属性来处理变异的结果。
代码语言:txt
复制
class MyComponent extends React.Component {
  handleMutation = () => {
    this.props.mutate()
      .then((result) => {
        // 获取变异的结果数据
        const { data, errors, loading } = result;

        if (loading) {
          // 正在加载中...
        } else if (errors) {
          // 处理错误信息
          console.error(errors);
        } else {
          // 处理成功的结果数据
          console.log(data);
        }
      })
      .catch((error) => {
        // 处理错误
        console.error(error);
      });
  }

  render() {
    // 渲染组件的代码...
  }
}

这样,你就可以从graphql()创建的高阶组件中获取MutationResult了。根据具体的业务需求,你可以进一步处理MutationResult对象中的数据和错误信息,以及展示加载状态等。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

16分8秒

人工智能新途-用路由器集群模仿神经元集群

领券