Инициализация Apollo-Client с нулевым значением выдает предупреждение: отсутствует поле в {} - PullRequest
0 голосов
/ 28 марта 2019

Я пытаюсь инициализировать клиентский запрос с нулевым значением, writeData, когда пользователь выбирает элемент, и запросить текущий выбор.

В настоящее время я получаю ошибку: отсутствует выбор поля в {}

Если я инициализирую выделение пустой строкой, ошибка исчезнет.

Определим клиентские запросы (typeDefs):

  extend type Query {
    isLoggedIn: Boolean!
    selection: String
  }

Создайте запрос:

query SelectionQuery {
    selection @client
}

Создать клиента:

const client = new ApolloClient({
    cache: new InMemoryCache(),
    link,
    initializers: {
        isLoggedIn: () => !!localStorage.getItem(AUTH_TOKEN),
        selection: () => null
    },
    typeDefs
})

Записать данные:

        <ApolloConsumer>
            {client => (
                <div onClick={() => client.writeData({ data: { selection: 'Test' } })}></div>
            )}
        </ApolloConsumer>

Считать данные:

        <Query query={SelectionQuery}>
            {({ data: { selection } }) => (
                <div>{selection}</div>
            )}
        </Query>

...