首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么apollo muation在vuex中返回“期望一个已解析的GraphQL文档”?

为什么apollo muation在vuex中返回“期望一个已解析的GraphQL文档”?
EN

Stack Overflow用户
提问于 2020-05-19 04:59:02
回答 1查看 257关注 0票数 0

我正在尝试从vuex动作中执行一个阿波罗变异。但它总是返回以下错误:

代码语言:javascript
复制
Expecting a parsed GraphQL document. Perhaps you need to wrap the query string in a "gql" tag? http://docs.apollostack.com/apollo-client/core.html#gql 

下面是我导入GraphQL文件的方式:

代码语言:javascript
复制
import addReservationGql from "@/gql/mutation/addReservation.gql";

下面是GeaphQL突变文件:

代码语言:javascript
复制
mutation addReservation($reservation:ResrevationInput){
  addReservation(reservation:$reservation){
    code
    success
    message
    reservation{
      createdAt
      numberOfPeople
      desiredDate
      desiredTime
      reservationStatus
    }
  }
}

下面是我在vuex操作中的突变调用:

异步状态({submitReservation,commit }) {

代码语言:javascript
复制
    const userId = this.$cookies.get("user-id");
    const reservation = {
        numberOfPeople: state.numberOfPeople,
        desiredDate: state.reservationDate,
        desiredTime: state.reservationTime,
        reservedBy: userId
    };

    try {
        let client = this.app.apolloProvider.defaultClient;
        const response = await client.mutate({
            mutation: addReservationGql,
            variables: { reservation }
        });
        // do something with response


    } catch (err) {
      console.log('error',err.message);
    }
}
EN

回答 1

Stack Overflow用户

发布于 2020-05-19 05:33:54

默认情况下,webpack没有配置gqlgraphql文件。您需要显式添加配置。

安装所需的软件包。

npm i graphql-tag --save

那就配置一下webpack吧。

代码语言:javascript
复制
module: {
  rules: [
    {
      test: /\.(graphql|gql)$/,
      exclude: /node_modules/,
      loader: 'graphql-tag/loader',
    },
  ],
},
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61878886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档