需要检查查询条件是否正确,并在查询时使用正确的语法。另外,还需要确保连接到的数据库或API具有正确的权限和访问控制。以下是可能的示例代码来解决此问题:
例如,假设我们有一个Post模型:
type Post {
id: ID!
title: String!
content: String!
}
并且我们正在使用aws-amplify查询它:
import { API } from 'aws-amplify';
import { listPosts } from './graphql/queries';
API.graphql({ query: listPosts }).then((response) => {
console.log(response.data.listPosts.items);
}).catch((error) => {
console.log(error);
});
如果我们查询结果是一个空数组[ ],我们可以检查我们的查询语法是否正确,并确保我们的Post对象具有正确的权限和访问控制。如果Post对象是私有的,我们可能需要使用API.graphql()的身份验证选项:
import { API, Auth } from 'aws-amplify';
import { listPosts } from './graphql/queries';
Auth.currentAuthenticatedUser().then(() => {
API.graphql({ query: listPosts }, {
authMode: 'AMAZON_COGNITO_USER_POOLS'
}).then((response) => {
console.log(response.data.listPosts.items);
}).catch((error) => {
console.log(error);
});
}).catch(() => {
console.log('User is not authenticated');
});