2017-01-29 15 views
9

Có thể sử dụng kế thừa với các kiểu đầu vào GraphQL không?Loại đầu vào GraphQL có thể kế thừa từ loại hoặc giao diện khác không?

Something như vậy (điều này, tất nhiên, không làm việc với các loại đầu vào):

interface UserInputInterface { 
    firstName: String 
    lastName: String 
} 

input UserInput implements UserInputInterface { 
    password: String! 
} 

input UserChangesInput implements UserInputInterface { 
    id: ID! 
    password: String 
} 
+1

Bạn đã bao giờ tìm ra câu trả lời cho câu hỏi của mình chưa? Tôi đang đối mặt với cùng một chính xác! – LB2

+3

@ LB2 tiếc là không, tôi đang giữ 2 loại riêng biệt tại thời điểm lặp lại thuộc tính. – kyrisu

+0

Cảm ơn! Tôi đang cố gắng để đại diện cho một biểu thức boolean (giống như mệnh đề WHERE của SQL), và không có thừa kế, có vẻ như không thể biểu hiện một biểu thức boolean tùy ý mà không có khả năng phù hợp với cú pháp. Rất tiếc vì nó không phải là một phần của ngôn ngữ. – LB2

Trả lời

2

Không, spec không cho phép các loại đầu vào để thực hiện các giao diện. Và hệ thống loại GraphQL nói chung không xác định bất kỳ hình thức thừa kế nào. Ngay cả giao diện cũng không thể kế thừa các giao diện khác. Thông số kỹ thuật bị cố ý hạn chế để đơn giản. Điều này có nghĩa rằng bạn đang bị mắc kẹt lặp lại các trường trên các loại đầu vào.

Các vấn đề liên quan