要使VSCode Intellisense与Apollo DataSource一起工作,需要进行以下步骤:
npm install @apollo/client apollo-datasource-rest
ApolloDataSource
。在这个类中,你可以定义你的数据源的配置和操作方法。以下是一个示例:const { ApolloDataSource } = require('apollo-datasource');
class MyDataSource extends ApolloDataSource {
async getUser(id) {
// 实现获取用户的操作
// ...
}
async getUsers() {
// 实现获取所有用户的操作
// ...
}
}
dataSources
选项中。以下是一个示例:const { ApolloServer } = require('apollo-server');
const { ApolloClient, InMemoryCache } = require('@apollo/client');
const MyDataSource = require('./MyDataSource');
const server = new ApolloServer({
typeDefs,
resolvers,
dataSources: () => ({
myDataSource: new MyDataSource(),
}),
});
this.dataSources
来访问数据源中的方法。以下是一个示例:const resolvers = {
Query: {
user: async (_, { id }, { dataSources }) => {
// 使用数据源的getUser方法
return dataSources.myDataSource.getUser(id);
},
users: async (_, __, { dataSources }) => {
// 使用数据源的getUsers方法
return dataSources.myDataSource.getUsers();
},
},
};
npm install @types/apollo-datasource
完成以上步骤后,你的VSCode Intellisense应该能够与Apollo DataSource一起正常工作了。