graphql 查询“.watch().valueChanges.pipe”不发送

问题描述

我使用 graphql-code-generator 来生成服务 使用 Mutation 一切正常,但是当我尝试使用 Query 时,在 chrome 控制台中什么也没有发生,似乎 Angular Apollo 客户端从不发布查询,Nodejs Apollo 服务器(显然)从不接收任何内容,但只有 Query 调用

这是组件中的简单调用

getHello() {
        console.log('getHello');
        this.helloGQL.watch()
        .valueChanges
        .pipe(
          map(result => {
            console.log('got result',result);  
            //result.data.posts
        })
        );
    } 

这是插件生成的服务:

//查询返回字符串“欢迎” export const Hellodocument = gqlquery Hello { hello };

  @Injectable({
    providedIn: 'root'
  })
  export class HelloGQL extends Apollo.Query<HelloQuery,HelloQueryVariables> {
    document = Hellodocument;
    
    constructor(apollo: Apollo.Apollo) {
      super(apollo);
    }
  }

在 chrome 的调试控制台中,我尝试调试,但在网络菜单下我什么也没看到...没有从客户端到服务器的调用....

如果我尝试将 chrome 的 devTools 与此代码一起使用:

fetch('https://api.ADDRESS.com/apiV1/graphql',{
  method: 'POST',headers: { 'Content-Type': 'application/json' },body: JSON.stringify({ query: `
    query {
      hello
    }` 
  }),})
.then(res => res.json())
.then(res => console.log(res.data));

这是服务器的响应:

P {__zone_symbol__state: null,__zone_symbol__value: Array(0)}
VM191:11 {hello: "Welcome"}

不知道怎么解决....

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)