在客户端和服务器之间共享片段

时间:2018-09-03 07:49:41

标签: graphql react-apollo graphql-js prisma prisma-graphql

我在React / Apollo应用程序中设置了一堆graphQL片段,但是我确实需要在Node服务器上访问它们。

例如,在我的客户端中,我尝试执行此查询,以获取所有相关的PersonCompany实体:

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

现在,我不能只将info传递到服务器上的查询中,因为context.db.query.person显然没有用于'people'的密钥。

理想情况下,我可以去

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

...但是那不起作用,因为服务器没有该片段。目前,我通过将大量的graphQL块从客户端复制粘贴到应用程序来解决此问题,但这是一个非常差的解决方案。

有答案吗,还是所有东西都需要加倍?

1 个答案:

答案 0 :(得分:1)

我建议使用纱线工作区,特别是如果您打算制作移动应用程序时。您可以打包代码块,以便在前端和后端应用程序之间共享它们。

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