如何在较旧的IOS /旧浏览器上使用Graphql Vue Apollo?

问题描述 投票:0回答:1

我只是意识到并注意到我的vue应用程序在某些旧版浏览器上运行不正常(例如ios 9)。我使用vue-apollo使用django graphene从graphql api获取数据,但是当我调试它时,它不会在第一次加载时调用事件。

以前我得到的错误如“全局未找到fetch”,但之后我已经通过在ApolloClient配置中添加“unfetch”来修复它。但我仍然无法在xhr网络上看到api被调用。我没有尝试过isomorphic-fetch

这是我的apollo客户端配置代码:

// src/utils/graphql.js
import { ApolloClient } from 'apollo-client';
import { HttpLink } from 'apollo-link-http';
import { InMemoryCache } from 'apollo-cache-inmemory';
import fetch from 'unfetch'

export default new ApolloClient({
  // Provide the URL to the API server.
  link: new HttpLink({ uri: '/api/', fetch: fetch }),
  // Using a cache for blazingly
  // fast subsequent queries.
  cache: new InMemoryCache(),
  connectToDevTools: true
});

我在main.js中这样指定它


import apolloClient from '../utils/graphql'
import VueApollo from 'vue-apollo'

Vue.use(VueApollo);

Vue.config.silent = true

const apolloProvider = new VueApollo({
  defaultClient: apolloClient,
  defaultOptions: {
    $loadingKey: "loading"
  }
})

这是我在main.js中使用的apollo示例以及使用智能查询:

apollo: {
  currentUser: {
    query: GET_LOGGED_USER,
    skipQuery() {
      return this.skipUser
    }
  }
}

我怎样才能在ios 9 /任何旧浏览器上运行它?

javascript vue.js vuejs2 graphql vue-apollo
1个回答
0
投票

好的,经过两天的调试后,我终于找到了问题。所以事实证明我需要添加和配置babel/polyfill以使其工作,并将其添加到我的应用程序的入口点。

希望每个有同样问题的人都能从我的错误中吸取教训

© www.soinside.com 2019 - 2024. All rights reserved.