如何在graphql中获取所有枚举值
如何检索 graphql中枚举类型中的所有值 例如:如何在graphql中获取所有枚举值,graphql,graphql-js,prisma,Graphql,Graphql Js,Prisma,如何检索 graphql中枚举类型中的所有值 例如: enum TRUCKPE_NAME { TATA_407 TATA_709 TATA_1106 ECHIER_1103 } type Document { truckType: TRUCKPE_NAME } 我想得到上面枚举中的所有名称。差不多 console.log(prisma.Documents().truckType()) // output TATA_407 TATA_709 TATA_1106 EC
enum TRUCKPE_NAME {
TATA_407
TATA_709
TATA_1106
ECHIER_1103
}
type Document {
truckType: TRUCKPE_NAME
}
我想得到上面枚举中的所有名称。差不多
console.log(prisma.Documents().truckType())
// output
TATA_407
TATA_709
TATA_1106
ECHIER_1103
您可以运行查询:
我通过基于Typescript的库做了类似的事情。不确定它是否适用于GraphQL。随时适应<代码>导出枚举JobStatusGroup{Running,Success,Failure,Pending,Pause,Other}导出接口字典{key:string,value:number}导出函数getKVPairsOfJobStatusGroups():字典[]{let result:Dictionary[]=[]作为字典[];for(让JobStatusGroup中的enumMember){let isValueProperty=parseInt(enumMember,10)>=0;如果(isValueProperty){let d:Dictionary={key:JobStatusGroup[enumMember].toString(),value:parseInt(enumMember,10),}result.push(d);}}}return result;}在分隔枚举项的{和逗号之前不也需要一个=吗?
const { data: { __type: { enumValues } } } = await prisma.request(`
{
__type(name: "TRUCKPE_NAME") {
enumValues {
name
}
}
}
`)
const values = enumValues.map(({ name }) => name)