[英]Cyclic GraphQL Schema Not Working
我有這樣的:
//driverType.js
module.exports = new GraphQLObjectType({
name: 'Driver',
fields: () => ({
homeTerminal: {
type: TerminalType,
resolve: resolver(User.HomeTerminal)
}
})
});
和這個:
//terminalType.js
module.exports = new GraphQLObjectType({
name: 'Terminal',
fields: () => ({
drivers: {
type: new GraphQLList(DriverType),
resolve: resolver(Terminal.Drivers)
}
})
});
我得到錯誤:
錯誤:模式必須包含唯一的命名類型,但是包含多個名為“ Driver”的類型。
我發現有一些帖子說將字段包裝在功能塊中可以解決該問題,但是正如您所看到的,我做到了,並且沒有任何區別。
應該支持Thins類型的循環引用,是嗎? 我們可以讓客戶指定所需的深度。
我究竟做錯了什么?
作為一種解決方法,我可以從DriverType中刪除homeTerminal
並使用原始字段對其進行展平,但這相當不雅致。
我發現了問題。 在terminalType.js
我有:
import DriverType from './DriverType';
應該:
import DriverType from './driverType';
小寫字母“ d”正確。
UPDATE
我認為這是正在發生的事情。 Nodejs緩存導入。 因此,多次導入同一文件總是返回同一實例。 但是,我相信,雖然import
不區分大小寫,但是緩存是 。 因此,使用不同的大小寫調用文件名將返回一個新的實例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.