[英]Custom graphql query
我有兩個 graphql 查詢,它們返回 field1、field2 或 field1 和 field2。 我還有一個布爾標志 field1 和 field2。 你能幫我寫一個函數來生成三個 qraphql 查詢之一:
gql
query {
employee {
name
}
};
gql
query {
employee {
surname
}
};
gql
query {
employee {
name
surname
}
}
function Form () {
...
const { data } = useQuery(
GET_NAME // query
);
const onClick = () => {
....
return textInput.current!.value=data.me.name;
將執行查詢(可能通過useQuery
)並返回可能的字符串之一:
name
surname
name + surname
例如:
如果我檢查名稱,函數將生成並執行查詢
query {
employee {
name
}
};
並將返回值 - 約翰
如果我檢查姓氏,該函數將生成並執行查詢
query {
employee {
surname
}
};
並將返回值 - Connor
如果我檢查名字和姓氏
query {
employee {
name
surname
}
};
並將返回約翰康納。
它和 SQL 查詢一樣嗎?
詳細說明:假設我服務器上只有一個對象{name: John, surname: Connor},沒有id等字段。 當我調用 onClick 函數時,客戶端應用程序只需要生成和執行一個查詢。 你能幫忙做嗎?
例如,如果我使用 SQL DB,我可以連接 String 查詢 const q = select ${field} from employee
其中字段可以等於“姓名”,“姓氏”或“姓名,姓氏”並生成查詢“從員工中選擇姓名”“從員工中選擇姓氏”“從員工中選擇姓名,姓氏”
此查詢將返回“John”、“Connor”或“John Connor”。 graphql 是否可以通過串聯或插值生成查詢?
graphql 是否可以通過串聯或插值生成查詢? 簡單的答案是否定的。
但是,如果與其他工具(例如使用mongoose 的 mongoDb 的 graphql-mongodb-projection和使用 Sequalize.js 的graphql-sequelize 結合使用,則可以完成)。
根據您使用的數據庫和服務器,您將需要一些像上面提到的工具來將必填字段傳遞給 ORM
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.