Хотя попытка определить пространство ваших мутаций таким образом не нарушает спецификацию c, она работает вопреки установленному соглашению, поэтому вы не найдете соглашения в отношении именования ваших лишних типов. , Обычный способ состоит в том, чтобы называть поля Mutation в соответствии с теми действиями, которые они представляют:
type Mutation {
modifyCustomer
modifyProvider
}
Когда схема может включать в себя десятки или сотни полей, также обычно можно увидеть, как называть это :
type Mutation {
customerAdd
customerModify
providerAdd
providerModify
}
Мутации в пространстве имен с использованием отдельных типов, как правило, нецелесообразны, так как это излишне усложняет как ваш внутренний код, так и ваш клиентский код. Например, в качестве клиента, если я хочу пакетировать свои вызовы мутации и использовать тот факт, что поля уровня root разрешаются последовательно, я должен знать, чтобы не только использовать псевдонимы, но и знать, что я должен псевдоним root полей для достижения желаемого эффекта.