Я использую graphql + mysql + реагировать-apollo, и вот один из типов graphql для User
таблицы:
type User {
id: ID!
name: String!
}
Моя проблема с ID scalar type
в graphql
заключается в том, что этоВозвращается в виде строки, когда первичные ключи * в MySQL равны int
, и это создало некоторые конфликты типов во внешнем интерфейсе с машинописью.
Могу ли я просто вообще не использовать скалярный тип идентификатора, учитывая, что я уже установил уникальный идентификатор с dataIdFromObject
для каждого объекта в клиенте Apollo:
import {InMemoryCache} from 'apollo-cache-inmemory';
const apolloMemoryCache = new InMemoryCache(
{
dataIdFromObject: ({id,__typename}) => {
return __typename+id
}
}
);
const client = new ApolloClient({
link: ApolloLink.from([authLink, httpLink]),
cache: apolloMemoryCache,
});
Вы бы сохранили?тип удостоверения личности или просто угробить?