GraphQL: вставить массив в таблицу - PullRequest
0 голосов
/ 29 октября 2018

Я хочу вставить массив в мою таблицу. И я не знаю, как этого добиться с помощью GraphQL.

Вот мой код:

import React from 'react';
import gql from 'graphql-tag';
import {graphql,compose, Mutation} from 'react-apollo';
import AanvraagFromulier from './AanvraagFormulier';

export class Aanvraag extends React.Component{
    onSubmit = (aanvraag) => {
        this.props.aanvraagmutate({
              //other mutation
            },
        });
        this.props.projectmutate({
            variables: {
                //other mutation
            },
        });
        this.props.teamlidmutate({
            variables: {
                id: '',
                naam: aanvraag.teamledennaam //array,
                email: aanvraag.teamledenemail //array,
                aanvraag_id: aanvraag.id,
                project_id: aanvraag.project_id,
                adminrechten: aanvraag.adminrechten //array
            }
        })
    }

    render(){
        console.log(this.props);
        return(
            <div>
                <AanvraagFromulier 
                  onSubmit={this.onSubmit}
                />
            </div>
        );
    }
}

const aanvraagmutation = gql`
    mutation addAanvraag($id:ID, $naam:String,$email:String,$divisie:String,$afdeling:String,$team:String,$status:String){
    addAanvraag(id:$id, naam:$naam,email:$email,divisie:$divisie,afdeling:$afdeling,team:$team,status:$status){
      id
     }
    }
`;

const projectmutation = gql`
mutation addProject($projectid:ID,$projectnaam:String,$projecttype:String,$projectlead_naam:String,$projectlead_email:String,$aanvraag_id:ID){
    addProject(id:$projectid, naam:$projectnaam,type:$projecttype,lead_naam:$projectlead_naam,lead_email:$projectlead_email,aanvraag_id:$aanvraag_id){
      id
    }
  }  
`;

const teamlidmutation = gql`
mutation addTeamlid($id:ID,$naam:String,$email:String, $aanvraag_id:ID, $project_id:ID,$adminrechten:String){
    addTeamlid(id:$id, naam:$naam,email:$email,aanvraag_id:$aanvraag_id,project_id:$project_id,adminrechten:$adminrechten){
      id
    }
  }
`;

export default  compose(
    graphql(aanvraagmutation, { name: 'aanvraagmutate' }),
    graphql(projectmutation, { name: 'projectmutate' }),
    graphql(teamlidmutation, {name: 'teamlidmutate'})
 )(Aanvraag);

функция, которая не работает, - командная мутация. Это потому, что в моей мутации я говорю, что она должна ожидать String, но, конечно, она получает массив ['name1', 'name2'] и т. Д. Так как же мне разделить значения массивов и вставить их в мою таблицу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...