Я создаю приложение флаттера и использую amplify_flutter 0.2.1
и amplify v5.1.0
, когда я извлекаю проект из пользовательского интерфейса Amplify-admin, он генерирует схему graphQL schema.graphql
, которая бесполезна во внешнем интерфейсе, потому что для извлечения или изменения документа каждый раз нам нужно писать документ запроса graphQL следующим образом:
String graphQLDocument =
'''mutation CreateTodo(\$name: String! \$description: String) {
createTodo(input: {name: \$name, description: \$description}) {
id
name
description
}
}''';
var operation = Amplify.API.mutate(
request: GraphQLRequest<String>(document: graphQLDocument, variables: {
'name': 'my first todo',
'description': 'todo description',
}));
Официальный CRUD-документ Amplify Flutter
Я хочу написать так:
const input = {
name,
description
};
const output = {
id,name,description
};
var graphQLDoc = createToDO(input,output); // it should return the string object according to the input and output passed.
var operation = Amplify.API.mutate(
request: GraphQLRequest<String>(document: graphQLDoc, variables: {
'name': 'my first todo',
'description': 'todo description',
}));
ИЛИ его можно расширить следующим образом:
const input = {
name:"hackrx",
description: "this works cool"
};
const output = {
id,name,description
};
var graphQLQueryRes = await createToDO(input,output); // it should return the whole fetched object according to the output passed.
Спасибо @zeiasorush за ответ, он мне очень помог.
рад это слышать