typescript - Graphql 打字稿打字和代码生成
问题描述
名为apollo-codegen的库允许在客户端上为 graphQL 模式创建类型。但是,它希望将gql
查询放入.graphql
文件中。
我的问题是:当它们在文件中时如何使用查询.graphql
?
我以前在我的.ts
文件中这样做
const ssQuery = gql`
subscription suppliers {
suppliers {
id,
name
}
}
`;
解决方案
假设您使用的是 webpack,graphql-tag包含一个加载器来导入查询。
// webpack.config.js
loaders: [
{
test: /\.(graphql|gql)$/,
exclude: /node_modules/,
loader: 'graphql-tag/loader'
}
]
// in your project
import MY_QUERY from './my-query.graphql'
graphql(MY_QUERY)(MyComponent)
请注意,这样做意味着每个文件应该只有一个查询/突变/订阅。但是,您也可以为片段创建文件并将它们导入到 graphql 文件中(虽然不确定 apollo-codegen 是否支持这种语法)。
推荐阅读
- c# - 无法关闭和删除我检查是否已损坏的打开文件 (.docx)
- fabricjs - 直接通过fabricjs中的控件更改大小?
- php - PHP 警告:回调,未找到函数“register_shortcodes”或无效函数>名称/Wordpress
- node.js - 在 Firebase 云功能中出现“getaddrinfo ENOTFOUND”错误
- hyperledger-fabric - 安装和实例化链码在超级账本结构中的真正含义是什么?它们之间有什么区别?
- git - 编辑 git 的提交评论
- java - TableLayout 子级不会在 PdfDocument.Page.Canvas 上绘制
- javascript - 如何在 Reactjs 中获取选择选项值的索引
- oracle - 30个线程的Nifi executeSql非常慢
- excel - 查找 - 类型不匹配