无法在vue apollo客户端中使我的Mutation工作

时间:2020-05-27 03:47:47

标签: vue.js graphql vue-apollo

我花了很多时间试图找到问题,但是我无法解决,我的变异在我的Apollo服务器上起作用了,但是在我的Vue应用程序中却没有作用。这很简单,但是只有字符串值有效,而对于我的float值无效:

<template>
  <div>
    <vs-input class="m-2" placeholder="Nombre" type="text" v-model="producto_nombre"></vs-input>
    <vs-input class="m-2" placeholder="Precio 0.00" type="number" v-model="producto_precio"></vs-input>
    <vs-input class="m-2" placeholder="Peso: 0.00" type="number" v-model="producto_peso"></vs-input>
    <vs-input class="m-2" placeholder="Alto" type="number" v-model="producto_alto"></vs-input>
    <vs-input class="m-2" placeholder="Largo" type="number" v-model="producto_largo"></vs-input>
    <vs-input class="m-2" placeholder="Ancho" type="number" v-model="producto_ancho"></vs-input>
    <vs-input class="m-2" placeholder="Categoría" type="text" v-model="producto_categoria"></vs-input>
    <vs-input class="m-2" placeholder="Subcategoria" type="text" v-model="producto_subcategoria"></vs-input>
    <vs-input class="m-2" placeholder="Proveedor" type="text" v-model="producto_proveedor"></vs-input>
    <vs-input class="m-2" placeholder="Buscar" type="text" v-model="producto_buscar"></vs-input>
    <vs-button @click.native="ingresarProducto()">Ingresar</vs-button>
  </div>
</template>
import gql from 'graphql-tag'
export default {
  data () {
    return {
      producto_precio: null,
      producto_peso: null,
      producto_alto: null,
      producto_largo: null,
      producto_ancho: null,
      producto_nombre: '',
      producto_categoria: '',
      producto_subcategoria: '',
      producto_proveedor: '',
      producto_buscar:''
    }
  },
  methods:{
    ingresarProducto () {
      console.log(
      this.producto_precio,
      this.producto_peso,
      this.producto_alto,
      this.producto_largo,
      this.producto_ancho,
      this.producto_nombre,
      this.producto_categoria,
      this.producto_subcategoria,
      this.producto_proveedor,
      this.producto_buscar
        )
      this.$apollo
        .mutate({
          // Mutation
          mutation: gql`mutation(
            $name: String!
            $category: String!
            $subcategory: String!
            $weight: Float!
            $high: Float!
            $long: Float!
            $width: Float!
            $provider: String!
            $price: Float!
            $search_like: String!
            ){
              newProduct(
            name: $name
            category: $category
            subcategory: $subcategory
            weight: $weight
            high: $high
            long: $long
            width: $width
            provider: $provider
            price: $price
            search_like: $search_like
              ){
                _id
              }
            }
          `,
          variables: {
            name: this.producto_nombre,
            category: this.producto_categoria,
            subcategory: this.producto_subcategoria,
            weight: this.producto_peso,
            high: this.producto_alto,
            long: this.producto_largo,
            width: this.producto_ancho,
            price: this.producto_precio,
            provider: this.producto_proveedor,
            search_like: this.producto_buscar
          }
        })
        .then(() => {
          this.$vs.notify({
            time: 6000,
            title: '¡Producto creado!',
            text: 'Producto ingresado correctamente.',
            color: 'success'
          })

        })
        .catch(error => {
          console.error(error)
        })
    }
  }

}

如果我在变量上设置值,则效果很好,但不能与我的v模型值一起使用

0 个答案:

没有答案