【问题标题】:ApolloClient is not a constructor react-apolloApolloClient 不是构造函数 react-apollo
【发布时间】:2018-04-27 05:39:25
【问题描述】:

我正在关注 this tutorial 并尝试实现 graphQl。以下行有问题:

const client = new ApolloClient();

奇怪的是,我在 react-apollo GitHub 页面中找不到任何内容。是不是我做错了什么愚蠢的事情。

import React, { Component } from 'react';
import ChannelsList from './ChannelsList.js';
import './App.css';

import {
  ApolloClient,
  gpl,
  graphql,
  ApolloProvider
} from 'react-apollo';


//issue with this line
const client = new ApolloClient();

const channelsListQuery = `
  query ChannelsListQuery {
    channels {
      id,
      name
    }
  }
`;

const ChannelsListWithData = graphql(channelsListQuery)(ChannelsList);

class App extends Component {
  render() {
    return (
      <ApolloProvider client={client}>
        <ChannelsListWithData />
      </ApolloProvider>
    );
  }
}

export default App;

【问题讨论】:

  • 你试过从'apollo-client'导入ApolloClient吗?

标签: javascript reactjs apollo react-apollo


【解决方案1】:

提供一个直截了当的答案 - ApolloClient 不再是 react-apollo 包的一部分,而是成为了它自己的包:apollo-client

您可能还会看到它是从 apollo-boost 导入的,这是一种便利,“包括我们 [Apollo 的作者] 认为对于使用 Apollo Client 进行开发至关重要的一些包。”

【讨论】:

    【解决方案2】:

    这里有同样的问题,实际上和 OP 一样遵循同一篇文章 (https://dev-blog.apollodata.com/full-stack-react-graphql-tutorial-582ac8d24e3b)。问题是这篇文章真的很老而且已经过时了,我不建议将它用作指南(看看文章中的 cmets)。

    首先,我建议您查看文档。此链接 (http://graphql.org/graphql-js/) 特别是启动和运行某些东西的良好起点。

    【讨论】:

      猜你喜欢
      • 2019-07-08
      • 1970-01-01
      • 2020-05-18
      • 2020-02-19
      • 2017-01-16
      • 2018-09-14
      • 1970-01-01
      • 2018-11-10
      • 2019-06-19
      相关资源
      最近更新 更多