reactjs - 如何在 router.query 之后运行 GraphQL 查询?
问题描述
前段时间开始学习 React 和 Next,但在完成这项工作时遇到了麻烦。还尝试使用 useLazyQuery 但无法弄清楚如何正确返回。
...
const TaskSingle = () => {
const { category } = router.query;
const { loading, error, data } = useQuery(GET_TASKS, {
variables: {
taskFilter: {
taskCategory: 5, // works
// taskCategory: category // doesn't work
},
},
});
}
const { categories } = data;
return (
<div>
{categories.map((cat) => {
<div key={cat.id}>
{cat.name}
</div>
})}
</div>
)
当我尝试使用“类别”而不是数字时,我收到此错误:http://hidden-url:3000/graphql:1 无法加载资源:服务器响应状态为 400(错误请求)
解决方案
最后我用了
const category = Number(router.query.category);
代替
const { category} = router.query;
因为我需要一个数字而不是一个字符串。
推荐阅读
- r - 列出工作目录中的前 n 个文件
- r - 无法与官员更改 PPT 标题字体
- java - batchUpdate Spring 4 + OpenJDK11 + MySQL 性能缓慢
- office-js - Outlook Web 加载项关闭时的事件
- android - Flutter :- PageView Image 内部没有设置为适合屏幕的宽度?
- iis - 如何显示自定义错误页面而不是 iis 403 错误页面?
- android - 使用 Gif 图像自定义进度条在某些设备上无法正常工作
- php - 在 laravel 上使用查询格式化嵌套 json
- clojure - Clojure:将映射数组转换为:key val 序列
- c# - 如何从大字符串中提取 5 位数字?