【发布时间】:2017-12-26 14:56:20
【问题描述】:
我在解释 GraphQL 规范的这一部分时遇到了一些问题。
https://facebook.github.io/graphql/#sec-Combining-List-and-Non-Null
1.
如果 List 的修改类型为 Non-Null,则该 List 可能不会 包含任何空项。
2.
如果 Non‐Null 的修改类型是 List,则不接受 null, 但是接受一个空列表。
我假设这些是
- 列表[类型!]
- 列表[类型]!
假设这么多是正确的。
第一个问题:对于 1,规范没有明确说空列表是无效的,不是吗?
graphql-js 项目中的This test 建议不应该这样做。
如果是这样,规范中没有指定非空列表的内容?
第二个问题:如果没有修饰符 (1),我是否应该能够提交具有空值的列表(如下所示)?
List[Book]
Book
title: String!
createBook(input: {books: [{null, {title: "Book a"}}]})
GraphiQL 似乎不允许将 null 添加到列表中,无论修饰符是否存在。那会是 GraphiQL 中的错误吗?
【问题讨论】:
标签: graphql