Новое в Graphql, используя webonyx / graphql-php .
Какая польза от определения моей схемы с определениями стилей класса по сравнению с предоставленным синтаксисом graphql?
У меня есть базовый рабочий пример с использованием определения схемы стиля класса следующим образом:
use MyApp\Type\MediaType;
use MyApp\TypeRegistry;
use GraphQL\Type\Definition\ObjectType;
use GraphQL\Type\Definition\Type;
class MusicType extends ObjectType {
public function __construct() {
$config = [
'fields' => [
'id' => Type::id(),
'name' => Type::String(),
'url' => Type::String(),
'dateStart' => Type::String(),
'dateEnd' => Type::String()
],
'interfaces' => [
TypeRegistry::media(),
TypeRegistry::dateRestricted(),
]
];
parent::__construct($config);
}
}
Тем не менее, определение схемы таким образом выглядит неуклюже, и единственное реальное преимущество, которое я могу видеть, это то, что я могу определять свои преобразователи в том же месте, что и схема.
Использование синтаксиса schema.graphqls выглядит чище и его легче перенести на другие серверные языки ...
type Music implements Media {
id: ID!
name: String!
url: String!
dateStart: String
dateEnd: String
}
Какая польза от определения моей схемы с определениями стилей классов по сравнению с предоставленным синтаксисом graphql?