javascript - GraphQL 将字符串转换为 args 中的浮点数
问题描述
目前,我正在从我的 GET url 参数中获取地理位置坐标,这些参数实际上是字符串。IE
对于这样的网址:
www.example.com?geolocation=-23.12345&geolocation=12.12345
它将其转换为:["-23.12345", "12.12345"]
是否可以将其作为字符串数组发送,然后 GraphQL 可以在测试之前对其重新格式化?
这是我的一些 GraphQL 代码:
const geolocation =
graphql.GraphQLNonNull(
graphql.GraphQLList(
graphql.GraphQLNonNull(
graphql.GraphQLFloat
)
)
)
var query =
new graphql.GraphQLObjectType({
name: "Query",
fields:
{
findMaps:
{
args:
{
geolocation:
{
type:
geolocation,
},
},
type:
convertToManyType(
map,
"map"
),
async resolve (
_,
args,
req
)
{
const results =
await findMaps(args)
return results
}
}
}
})
解决方案
您可以在使用它们之前将字符串转换为浮点数:
async resolve (
_,
args,
req
)
{
const results =
await findMaps(args.map(parseFloat))
return results
}
您还可以分析它们并在需要时抛出异常。
推荐阅读
- visual-studio-2019 - 如何在cefsharp webbrowser中保存登录信息和状态
- numpy - 如何使用 rust 的 ndarray 板条箱获取或创建等效于 numpy 的 amax 函数?
- r - 如何使用 ggplot 中的 facet 将 2 个类别与整个类别进行比较
- apache-kafka - 在 Kafka 的事件中获取统计信息的更好方法是什么?
- reactjs - 即使没有内容,如何强制 antd 选项卡全高(使用 React 和样式化组件)
- c# - Unity用文本替换登录字符串
- r - popupGraph - R,Leaflet:为什么我的弹出图是空白的?
- c# - C#如何通过反射初始化属性(没有setter)
- visual-studio - 如何在容器中成功安装 Visual Studio Build Tools 2019?
- c - 如果找到任何带有 0 的元素,则添加 0 并将其推送到最后一个元素