在前端开发中,有时需要自定义视图,但手写 GraphQL 查询语句非常繁琐,特别是当查询很复杂时。本文将介绍如何使用平台内置的API buildSingleItemParam
来简化这个过程。
使用方法
buildSingleItemParam
方法接受两个参数:
- 字段结构
- 数据
下面是一个示例代码:
import { IModelField, buildSingleItemParam } from '@kunlun/dependencies';
const onSaveViewData = async (data) => {
// 定义字段的数据结构
const modelFields = [
{ name: 'conversationId', ttype: ModelFieldType.String },
{ name: 'msgId', ttype: ModelFieldType.String },
{ name: 'rating', ttype: ModelFieldType.Integer },
{
name: 'tags',
ttype: ModelFieldType.OneToMany,
modelFields: [
{ name: 'id', ttype: ModelFieldType.String },
{ name: 'name', ttype: ModelFieldType.String }
]
},
{ name: 'text', ttype: ModelFieldType.String }
] as IModelField[];
// 构建 GraphQL 查询语句
const gqlStr = await buildSingleItemParam(modelFields, data);
const gqlBody = `mutation {
chatMessageFeedbackMutation {
create(
data: ${gqlStr}
) {
conversationId
msgId
rating
tags {
id
}
text
}
}
}`;
// 向服务器发送请求
const rst = await http.query('ModuleName', gqlBody)
// todo
};
// 调用示例
onSaveViewData({
conversationId: '12',
msgId: '123',
tags: [
{ id: '122', name: '222' },
{ id: '122', name: '222' }
]
});
以上是使用 buildSingleItemParam
简化 GraphQL 查询语句的示例代码。通过这种方式,我们可以更高效地构建复杂的查询语句,提高开发效率。
Oinone社区 作者:oinone原创文章,如若转载,请注明出处:https://doc.oinone.top/frontend/73.html
访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验