首页 > 解决方案 > aws-amplify [ts] 类型“{}”上不存在属性“订阅”。[2339]

问题描述

我是aws amplify的新手。我已经使用 amplify 设置了一个应用程序,并且我有一个使用 GraphQl 返回记录的 API。我创建了一个订阅,应该在创建新博客条目时触发。正在创建条目。在文档https://aws-amplify.github.io/docs/js/api 中,代码示例表明我可以使用以下内容订阅突变。我不断收到一条错误消息,指出错误 TS2339:类型“{}”上不存在属性“订阅”。它来自客户的分配。我不确定它为什么这么说,我希望你能帮助我解决这个错误。

import { onCreateBlog } from './graphql/subscriptions';

//GraphQl订阅

export const onCreateBlog = `subscription OnCreateBlog {
  onCreateBlog {
    id
    name
    posts {
      items {
        id
        title
      }
      nextToken
    }
  }
}
`;

//带有异步方法的ngInit函数

   ngOnInit() {

    (async () => {
          let client  = Amplify.configure(awsmobile); // error from here

          let subscription = client.subscribe(graphqlOperation(subscriptions.onCreateBlog)).subscribe({
            next: data => {
              console.log(data);
            },
            error: error => {
              console.warn(error);
            }
          });
        })();

  }

标签: graphqlaws-appsyncaws-amplifygraphql-subscriptions

解决方案


推荐阅读