问:使用 context.prisma 时的智能感知
Q: Intellisense when using context.prisma
我正在用 prisma 创建我的 graphql 层。我有一个关于在解析器中使用带有 typescript 的 prisma 的问题。
文档中建议导入 prisma 以获得智能感知:
import { prisma } from '../generated/prisma-client'
如果你这样做,当你写一个像这样的解析器时,你将不会得到任何建议。
const user = (parent, args, context, info) => context.prisma.bodyweight({id: parent.id}).user()
要获得建议,您必须在不引用上下文的情况下编写它,然后再添加引用,这很容易让您忘记它并产生错误。
有没有办法修复它(也许在 tsconfig 中)?
您可以通过输入上下文来获得智能感知:
import { Prisma } from '../generated/prisma-client';
export interface Context{
prisma: Prisma;
}
const user = (parent, args, context: Context, info) => context.prisma.bodyweight({id: parent.id}).user()
您还应该查看 graphqlgen。这将允许您自动键入解析器。 https://github.com/prisma/graphqlgen#graphqlgen
我正在用 prisma 创建我的 graphql 层。我有一个关于在解析器中使用带有 typescript 的 prisma 的问题。
文档中建议导入 prisma 以获得智能感知:
import { prisma } from '../generated/prisma-client'
如果你这样做,当你写一个像这样的解析器时,你将不会得到任何建议。
const user = (parent, args, context, info) => context.prisma.bodyweight({id: parent.id}).user()
要获得建议,您必须在不引用上下文的情况下编写它,然后再添加引用,这很容易让您忘记它并产生错误。
有没有办法修复它(也许在 tsconfig 中)?
您可以通过输入上下文来获得智能感知:
import { Prisma } from '../generated/prisma-client';
export interface Context{
prisma: Prisma;
}
const user = (parent, args, context: Context, info) => context.prisma.bodyweight({id: parent.id}).user()
您还应该查看 graphqlgen。这将允许您自动键入解析器。 https://github.com/prisma/graphqlgen#graphqlgen