Аполлон начинающий: не может прочитать данные обратно из кеша - PullRequest
0 голосов
/ 16 сентября 2018

У меня есть этот код для управления значением поля поиска

const GET_SHOP_FILTER = gql`
  query getFilter {
    name @client
  }
`;

class ShopSuggestBox extends Component {
    render() {
        return (
                <div>
                    <div className="name">
                        <Query query={GET_SHOP_FILTER}>
                            {({data, client}) => (
                                    <div>
                                        data is {JSON.stringify(data)}
                                    <input
                                           onChange={e => {
                                               client.writeData({data: {name: e.target.value}})
                                           }} ...//not relevant

Моя проблема в том, что я получаю следующие ошибки:

[Ошибка GraphQL]: Сообщение: не удалось запросить поле «имя» для типа «Запрос»., Местоположение: [объект], Путь: не определено index.js: 63 [Ошибка GraphQL]: Сообщение: неизвестная директива "client"., Местоположение: [объект Object], Путь: не определено

Насколько я понимаю, директива @client не интерпретируется. Что я пропустил, пожалуйста?

1 Ответ

0 голосов
/ 16 сентября 2018

Ok

Проблема в том, что, хотя в документе сказано, что распознаватели не требуются, вы должны предоставить пустой распознаватель, чтобы он работал.

Я изменил код следующим образом (поэтому doc неверен)

const client = new ApolloClient({
    //uri: "http://localhost:4000/graphql"
//  cache,

    clientState: {
        defaults: {
            name: "my",
            city: "",
            selectedId: null,
            previewId: null,
            selectedComplaintId: null,
        }, resolvers: {}
    }
});
...