Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Graphql 使用第一个查询结果作为第二个查询的条件_Graphql - Fatal编程技术网

Graphql 使用第一个查询结果作为第二个查询的条件

Graphql 使用第一个查询结果作为第二个查询的条件,graphql,Graphql,我有两个这样的问题 const featuredArticles = gql ` query featureArticles() { articles(where: {limit: 4, feature: true, sort: "published_at:desc") { id } } `; 第一个查询将获得4篇最新特色文章的ID,第二个查询将获得数据库中所有可用文章的ID。现在,我试图更改第二个查询,以从第一个查询中获取除4篇文章以外的所有文章,但我不知

我有两个这样的问题

const featuredArticles = gql `
query featureArticles() {
  articles(where: {limit: 4, feature: true, sort: "published_at:desc") {
    id
  }
}
`;

第一个查询将获得4篇最新特色文章的ID,第二个查询将获得数据库中所有可用文章的ID。现在,我试图更改第二个查询,以从第一个查询中获取除4篇文章以外的所有文章,但我不知道如何使用结果作为条件。你们能给我一些提示吗?提前谢谢

My index.jsx如下所示:

const Home = () => (
  <div style={{
    overflowX: 'hidden',
  }}
  >
    let arr=[]
    <Query query={FEATURE_ARTICLES_QUERY}>
      {({ data: { articles } }) => {
        if (!articles.length) {
          return null;
        }
        arr=[articles[0].id,.......,articles[10].id];
        return <SectionFeature articles={articles} />;
      }}
    </Query>
    <Query query={ARTICLES_QUERY} id={arr}>
      {({ data: { quotes } }) => {
        if (!quotes.length) {
          return null;
        }
        return <SectionQuote quotes={quotes} />;
      }}
    </Query>
  </div>
);

export default Home;
const Home=()=>(
设arr=[]
{({data:{articles}}})=>{
如果(!articles.length){
返回null;
}
arr=[articles[0].id,…,articles[10].id];
返回;
}}
{({data:{quotes}}})=>{
如果(!quotes.length){
返回null;
}
返回;
}}
);
导出默认主页;
例如,我想将第一个查询的结果传递给arr[],然后传递给第二个查询。但是数组将在第一次查询结束后立即消失


更新:我已经做到了。非常感谢您的提示

ID数组,请登录graphiql/Played。。。。[xxx,yyy]您能告诉我如何将结果传递给数组,然后将该数组传递给另一个查询吗??我是新手,这件事让我很困惑:(获取结果,将id提取到数组中,作为param传递我试图提取结果并保存到数组,如arr=[result[0].id],但当第一个查询结束时,数组将消失。我无法将其传递到第二个查询:(什么env/lang?看起来像js…怎么了?复制的简单值存在,它不是空的ref…控制台记录它…yuo是否检查了如何在graphiql/Played中传递数组[在变量查询中]?
const Home = () => (
  <div style={{
    overflowX: 'hidden',
  }}
  >
    let arr=[]
    <Query query={FEATURE_ARTICLES_QUERY}>
      {({ data: { articles } }) => {
        if (!articles.length) {
          return null;
        }
        arr=[articles[0].id,.......,articles[10].id];
        return <SectionFeature articles={articles} />;
      }}
    </Query>
    <Query query={ARTICLES_QUERY} id={arr}>
      {({ data: { quotes } }) => {
        if (!quotes.length) {
          return null;
        }
        return <SectionQuote quotes={quotes} />;
      }}
    </Query>
  </div>
);

export default Home;