Поделиться фрагментами между клиентом и сервером - PullRequest
0 голосов
/ 03 сентября 2018

В моем приложении React / Apollo настроено несколько фрагментов graphQL, но мне действительно нужен доступ к ним на моем Node-сервере.

Например, в моем клиенте я пытаюсь выполнить этот запрос, чтобы получить все соответствующие сущности Person и Company:

query GET_REPORTING_CLIENTS{
    reportingClients{
        people {
            ...PersonFragment
        }
        companies {
            ...CompanyFragment
        }
    }
}

Теперь я не могу просто передать info в запросы на моем сервере, потому что context.db.query.person явно не будет иметь ключа для "людей".

В идеале я бы мог пойти:

context.db.query.person({
     where: (query details)
}, PersonFragment)

... но это не работает, потому что на сервере нет фрагмента. В данный момент я обхожу это путем копирования огромных блоков graphQL из клиента в приложение, но это действительно плохое решение.

Есть ли ответ, или все должно только удвоиться?

1 Ответ

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

Я рекомендую использовать рабочие области пряжи, особенно если вы планируете создать мобильное приложение. Вы можете упаковать куски кода, где он может быть разделен между внешним и внутренним приложениями.

https://yarnpkg.com/en/docs/workspaces

...