首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用react-apollo 2.1突变和react生命周期方法

使用react-apollo 2.1突变和react生命周期方法
EN

Stack Overflow用户
提问于 2018-05-07 12:34:32
回答 1查看 827关注 0票数 1

我想知道,在react生命周期方法中使用新的Mutation组件的方法是什么。

假设我有一个页面,其中我使用了几个react-apollo突变。当加载从truefalse的状态更改时,我想执行另一个突变,以便在页角显示一个通知弹出窗口。

对于高阶组件,我会在componentDidUpdate方法中做到这一点,但现在使用<Mutation />组件,我不能做到这一点。我错过了什么吗?

EN

回答 1

Stack Overflow用户

发布于 2018-05-14 20:20:41

你可以在render prop函数中渲染你的组件,并在props中传递突变:

代码语言:javascript
复制
import gql from "graphql-tag";
import { Mutation } from "react-apollo";

const ADD_TODO = gql`
  mutation addTodo($type: String!) {
    addTodo(type: $type) {
      id
      type
    }
  }
`;

const AddTodo = () => {
  return (
    <Mutation mutation={ADD_TODO}>
      {(addTodo, { data }) => 
        <YourComponent someFunction={addTodo} /> 
      }
    </Mutation>
  );
};

class YourComponent extends Component {
  componentDidMount(){
    this.props.someFunction({variables: {type: 'abc'}})
  }
  render(){
    return <div></div>
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50207151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档