ApolloClient不是构造函数react-apollo

时间:2017-11-14 10:11:21

标签: javascript reactjs apollo react-apollo

我正在关注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;

2 个答案:

答案 0 :(得分:2)

要提供一个简单的答案- ApolloClient 不再是react-apollo软件包的一部分,而是成为了它自己的软件包:apollo-client

您可能还会看到它是从apollo-boost导入的,这是一种便利,“其中包括我们[Apollo的作者]认为对使用Apollo Client开发必不可少的某些程序包。”

答案 1 :(得分:1)

在这里遇到同样的问题并且实际上遵循与OP相同的文章(https://dev-blog.apollodata.com/full-stack-react-graphql-tutorial-582ac8d24e3b)。问题是这篇文章真的很旧并且已经过时了,我不建议将它作为指南使用(请看一下文章中的评论)。

首先,我建议您查看文档。这个链接(http://graphql.org/graphql-js/)特别是一个良好的起点和运行的起点。