微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将数组发送到 Micronaut Graphql 以从 ReactJS 进行查询

如何解决将数组发送到 Micronaut Graphql 以从 ReactJS 进行查询

我正在尝试从 reactjs 向 micronaut 发送一个字符串数组,以测试数据是否成功传递,我在前端有这样的东西:

const [filterName,setName] = useState(["test"]);
const age = 1;

const { data: people } = useSWR([`
     query ($name:[String],$age:Int){
        getName(name:$name,age:$age){ ... }`,filterName,age],(query,age) => fetcher(query,{filterName,age}))

我的 micronaut 后端如下所示:

@GraphQLQuery(name = "getName")
List<User> getName (@GraphQLArgument(name = "name") List<String> name,@GraphQLArgument(name = "age") Integer age ){

    System.out.println("name: " + name.toString());
    System.out.println("age: " + age);
}

我可以打印 agename 打印为 null。难道我做错了什么?我已经尝试使用 ArrayList 代替 List,仍然无法正确接收名称。希望您能提供帮助。谢谢!

解决方法

它是 fetcher 中的变量。它需要匹配 micronaut 中声明的 api 名称。应该是这样的:

const [filterName,setName] = useState(["test"]);
const age = 1;

const { data: people } = useSWR([`
     query ($name:[String],$age:Int){
        getName(name:$name,age:$age){ ... }`,filterName,age],(query,age) => fetcher(query,{name:filterName,age}))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。