【发布时间】:2018-07-09 22:30:51
【问题描述】:
我有这种情况:
团队组件.js:
....more code
<WorkItemComponent workType="Beautiful">
<WorkItemComponent workType="VeryBad">
....more code
WorkItemComponent.js:
import React, { Component } from "react";
import { graphql } from "react-apollo";
import { compose, withHandlers } from "recompose";
import MY_BEAUTIFUL_WORKTYPE_QUERY from "./MY_BEAUTIFUL_WORKTYPE_QUERY";
import MY_VERYBAD_WORKTYPE_QUERY from "./MY_VERYBAD_WORKTYPE_QUERY";
import AmazingComponent from "./AmazingComponent";
class WorkItemComponent extends Component {
<AmazingComponent/>
}
export default compose(
graphql(MY_BEAUTIFUL_WORKTYPE_QUERY), // <-- here I need to change this query
choosing from [MY_BEAUTIFUL_WORKTYPE_QUERY, MY_VERYBAD_WORKTYPE_QUERY] based on "workType" prop in parent component "TeamComponent".
withHandlers({
...
})
)(WorkItemComponent);
我需要更改查询“MY_BEAUTIFUL_WORKTYPE_QUERY”选择MY_BEAUTIFUL_WORKTYPE_QUERY 或MY_VERYBAD_WORKTYPE_QUERY
基于父组件“TeamComponent”中的“workType”属性。
但是怎么做呢?!
也许我必须重新考虑一切?
我哪里错了?
【问题讨论】:
标签: reactjs graphql apollo react-apollo apollo-client