Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 根据变量的长度进行多次变异调用_Javascript_Reactjs_Graphql_React Apollo_Graphql Tag - Fatal编程技术网

Javascript 根据变量的长度进行多次变异调用

Javascript 根据变量的长度进行多次变异调用,javascript,reactjs,graphql,react-apollo,graphql-tag,Javascript,Reactjs,Graphql,React Apollo,Graphql Tag,有没有办法让我从前端多次调用突变?我有一个需要添加到应用程序中的用户数组,目前变异只允许一次添加一个用户(我们可以更改变异,但他们想看看我是否可以先在前端批处理) 这是我目前的变异: export const SHARE_APP = gql` mutation ShareApp( $appId: String! $userId: String! ) { shareApp( appId: $appId userId: $userId

有没有办法让我从前端多次调用突变?我有一个需要添加到应用程序中的用户数组,目前变异只允许一次添加一个用户(我们可以更改变异,但他们想看看我是否可以先在前端批处理)

这是我目前的变异:

export const SHARE_APP = gql`
  mutation ShareApp(
    $appId: String!
    $userId: String!
  ) {
    shareApp(
      appId: $appId
      userId: $userId
    ) {
      updatedApp {
        id
      }
    }
  }
`;

这可以在前端完成吗?还是我需要更改gql代码以接受ids的数组?

变异组件、
使用变异
钩子和
graphql
HOC都为您提供了一种可以任意多次使用的方法

const [share] = useMutation(SHARE_APP)
await Promise.all(appIds.map((appId) => share({
  variables: {
    userId,
    appId,
  },
})))
至于批处理这些请求,Apollo不支持开箱即用,因此您必须使用类似的链接