Ad

How To Put Variable From Map Function Into Apollo Mutation Variables?

- 1 answer

 {data.devices.payload.map(device => (
                    <div>
                      <Card className="card">
                        <CardContent>
                          <TextField
                            id="outlined-bare"
                            defaultValue={device.name}
                            margin="normal"
                            variant="outlined"
                            variables={{device.id}}
                            onChange={e => this.setState({ name: e.target.value })}
                          />
                          <Typography>
                            Status: <span className={device.isOn === true ? "active" : "inActive"}>{device.isOn === true ? "WŁĄCZONY" : "WYŁĄCZONY"}</span>
                          </Typography>
                        </CardContent>

                        <CardActions>
                          <div className="wrapper">

                            <div className="buttonLeft">
                              <Mutation
                                mutation={device.isOn === true ? SETOFF_MUTATION : SETON_MUTATION}
                                variables={{ device.id  }}>
                                {mutation => (
                                  <div className="button">
                                    <Button variant="contained" color={device.isOn === true ? "secondary" : "primary"} onClick={mutation}>
                                      {device.isOn === true ? "WYŁĄCZ" : "WŁĄCZ"}
                                      <PowerSettingsNewIcon className="rightIcon" />
                                    </Button>
                                  </div>
                                )}
                              </Mutation>
                            </div>

I just want to pass my device.id from map function into Apollo Mutation. I can other values like device.name. Why i can't pass device.id?

Ad

Answer

Look at your code again do you really mean variables={{device.id}} or you wanted to type variables={device.id} or are you trying pass in an object with a property id which should be variables={{id:device.id}}

Ad
source: stackoverflow.com
Ad