- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这可能是代码
架构
import { gql } from 'apollo-server-express';
export default gql`
extend type Mutation {
signUp(
lastName: String!
): String!
}
`;
解析器
{
Query: {},
Mutation: {
signUp: async (
_,
{ lastName}
) => {
try {
console.log(lastName)
return 'ok';
} catch (error) {
return 'error';
}
},
},
};
请求
mutation($lastName:String){
signUp(lastName:$lastName)
}
查询变量
{"lastName":"Darjo" }
我无法理解,但我得到了错误
"Variable \"$lastName\" of type \"String\" used in position expecting type \"String!\".",
但是当我删除标志 ! lastName: String
时,一切正常。
我就是无法理解。这是什么原因?
最佳答案
您已将 lastName
参数的类型指定为 String!
。 !
指示类型非空——换句话说,参数是必需的并且不能等于空。
在查询中,您定义一个变量 ($lastName
) 并为其分配类型。参数可以传递给变量,但前提是它们的类型匹配。例如,如果参数采用 Int
,则不能向其传递 Boolean
类型的变量。同样,如果参数非空,则不能向其传递可为空的变量。这是因为可为 null 的变量可能为 null,但这会违反参数的不可空性。
请注意,反之则不然——可为 null 的参数可以接受非 null 变量。
这是有效的:
# String! argument and String! variable
type Mutation {
signUp(lastName: String!): String!
}
mutation($lastName:String!) {
signUp(lastName:$lastName)
}
同样有效:
# String argument and String! variable
type Mutation {
signUp(lastName: String): String!
}
mutation($lastName: String!) {
signUp(lastName: $lastName)
}
是这样的:
# String argument and String variable
type Mutation {
signUp(lastName: String): String!
}
mutation($lastName: String) {
signUp(lastName: $lastName)
}
但这无效有效:
# String! argument and String variable
type Mutation {
signUp(lastName: String!): String!
}
mutation($lastName: String) {
signUp(lastName: $lastName)
}
唯一的异常(exception)是您为变量提供默认值。所以这仍然有效:
# String! argument and String variable
type Mutation {
signUp(lastName: String!): String!
}
mutation($lastName: String = "Some default value") {
signUp(lastName: $lastName)
}
您可以在spec中阅读有关变量验证的信息。 .
关于javascript - String 类型的 $lastName 用于需要 String 类型的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58920213/
我有两个单独收集的同一组学生的姓名列表。有许多打印错误,我一直在使用模糊匹配来链接这两个列表。我 99+% 有 agrep和类似的,但我坚持以下基本问题:我如何匹配(例如)名字“Adrian Bruc
我有一个名字列表,我需要将这些名字从“名字姓氏”转换为“姓氏,名字”。 Barack Obama Donald J. Trump J. Edgar Hoover Beyonce Knowles-Car
我有一栏写满了名字: “姓氏,名字” 我想要另一列,该姓名列表写为: “名字 姓氏” 那么,如何将字符串从“lastName,firstName”切换为“firstName LastName”? 最佳
我正在尝试将包含某人姓名的字符串转换为“Last, First”到“First Last”。 这就是我现在的做法: name = name.Trim name = name.Substring(nam
如何在 Postgres 中将表列数据从“LastName, FirstName”转换为“FirstName LastName”。 因此,如果表列包含“Ona, Lisa”,我希望它返回“Lisa O
我有 python pandas 数据框,由用于执行 python 脚本的 power bi 数据源转换支持提供,其中一列由 lastname, firstname 组成,我需要它由 名字姓氏。 我尝
我有 python pandas 数据框,由用于执行 python 脚本的 power bi 数据源转换支持提供,其中一列由 lastname, firstname 组成,我需要它由 名字姓氏。 我尝
我想对由 ember-data 获取的数组或用户进行排序。我无法弄清楚如何将数组排序为lastName。下面的代码不能完成这项工作。我该如何修复它? app.js App.UsersRoute = E
我尝试在新 API 中合并来自两个 API 的数据,但收到错误未捕获类型错误:无法读取未定义的属性“lastName”。发生这种情况是因为在 API2 中缺少 lastName 时找不到它。在这种情况
在你问之前,是的,我必须使用一个列表。我不能使用 slice 或其他任何东西。所以,我有一个充满结构的列表,但需要根据结构的姓氏变量对列表进行排序。我已经修补了一些东西,但最终没有什么可展示的。我不是
@{DisplayName=Firstname Lastname} 需要只是 'Firstname Lastname' 因为 get-mailbox -identity '@{DisplayName=
将字符串“Parisi, Kenneth”分成“Kenneth”和“Parisi”的最佳方法是什么? 我仍在学习如何使用这些正则表达式解析字符串,但不太熟悉如何将 vars 设置为等于匹配的字符串和匹
在我正在使用的表格中,full_name 列的格式为“Firstname Lastname” 例如。 “约翰·韦斯特” 我正在使用这个: $q="John"; $sql = "SELECT full_
我被困在尝试为给定用户名生成密码的情况下。 我通过用户的姓氏 + 名字的第一个字母,根据用户通过 FirstName 和 LastName 的文本框输入创建用户名。例如,如果用户的名字是“Ronald
我制作了一个包含标签的自定义用户控件。我有 3 个字符串属性:名字、姓氏、全名。 如何设置标签的 text = FullName ? public string firstName {
我试图通过假设名字的形式是 Firstname LaSTLame 来捕捉名字。这适用于下面的代码,但我希望能够捕捉到像 Pär Åberg 这样的国际名称。我找到了一些解决方案,但不幸的是,它们似乎不
我们有一个表,其中有一个名为 fullname 的列,格式为“Lastname, Firstname” 我在表中添加了新列,以便我们可以将姓氏和名字分开,但我不知道该怎么做。下面的代码是我使用的,但“
需要验证全名(名字/姓氏 - 1 个输入字段)。我是这个领域的新手,无法制定正确的语法也许也适用于正则表达式
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
这个问题已经有答案了: why the string is getting altered after strcat()? (4 个回答) 已关闭 4 年前。 当我编译这段代码时,我第三次要求它在告诉
我是一名优秀的程序员,十分优秀!