如何在 apollo 的 graphql-gql 中使用从 npm 包导入的自定义 graphQL 类型
How to use custom graphQL types imported from npm package in apollo's graphql-gql
我不想编写自己的自定义标量类型,我想从库中导入它们。
例如,我想要来自 this npm package - gnt
的 UnixTimestamp
在我的 typeDefs.js
中,我尝试这样的事情
import { gql } from 'apollo-server-express'
import { UnixDate } from 'gnt'
export default gql`
type vacation {
from: ${UnixDate}
to: ${UnixDate}
}
/* other types and queries */
`
但是没用。我得到 Error: Type "UnixDate" not found in document.
以这种方式将 UnixDate
添加到字段会将标量分配给该特定字段并告诉 GraphQL 如何处理解析它,但它不会显式地将标量添加到模式本身。您仍然需要将标量添加到 typeDef,如下所示:
export default gql`
scalar ${UnixDate} /* use template literal placeholder */
type vacation {
from: ${UnixDate}
to: ${UnixDate}
}
# Other typeDefs
`
我不想编写自己的自定义标量类型,我想从库中导入它们。 例如,我想要来自 this npm package - gnt
的 UnixTimestamp在我的 typeDefs.js
中,我尝试这样的事情
import { gql } from 'apollo-server-express'
import { UnixDate } from 'gnt'
export default gql`
type vacation {
from: ${UnixDate}
to: ${UnixDate}
}
/* other types and queries */
`
但是没用。我得到 Error: Type "UnixDate" not found in document.
以这种方式将 UnixDate
添加到字段会将标量分配给该特定字段并告诉 GraphQL 如何处理解析它,但它不会显式地将标量添加到模式本身。您仍然需要将标量添加到 typeDef,如下所示:
export default gql`
scalar ${UnixDate} /* use template literal placeholder */
type vacation {
from: ${UnixDate}
to: ${UnixDate}
}
# Other typeDefs
`