【发布时间】:2018-04-18 23:20:36
【问题描述】:
我使用 Relay Modern 作为我的客户端 GraphQL 接口。我想知道是否可以在 Relay Modern 中动态构建我的查询语句,比如更改原来的:
const ComponentQuery = graphql`
query ComponentQuery ($companyId: ID!) {
viewer {
company(id: $companyId) {
id
name
enabled
users {
id
username
email
firstName
lastName
jobTitle
phone
}
}
}
}
`;
致以下:
let queryFields = ['name', 'enabled'];
let userFields = ['username', 'email', 'firstName', 'lastName', 'jobTitle', 'phone' ];
const ComponentQuery = graphql`
query ComponentQuery ($companyId: ID!) {
viewer {
company(id: $companyId) {
id
queryFields
name
enabled
users {
id
userFields
}
}
}
}
`;
当然,由于 GraphQL Schema 是静态的,因此所有字段都必须存在于 GraphQL Schema 中。我想要的只是动态构建查询,而不是动态的 GraphQL 架构。
【问题讨论】:
标签: javascript reactjs graphql relayjs