Получение ошибки _reactApollo.connect(0, mapQueriesToProps) не является функцией

Я использую клиент response-apollo и ApolloProvider для соединения моего компонента с функцией queryprops для визуализации данных, но я получаю эту ошибку undefined не является функцией (оценка (_reactApollo.connect)(mapQueriesToProps))

import React, { Component } from 'react';
import { connect, gql, graphql } from 'react-apollo';
import { View, Text, ActivityIndicator } from 'react-native';

class ProductsScreen extends Component {

    componentWillMount() {
        console.log('component is going to render');
    }

    renderProducts() {
        if (this.props.data.loading) {
            return (
                <View>
                    <ActivityIndicator size='large' />
                </View>
            );
        }

        return (
            <Text>{ this.props.data.shop.name }</Text>
        );
    }

    render() {
        return (
            <View>
              { this.renderProducts() }
            </View>
        );
    }
}

const mapQueriesToProps = ({ ownProps, state }) => {
  return {
            query: gql`query {
                  shop {
                      name
                      primaryDomain {
                        url
                        host
                      }
                    }
             }`
        };
};

export default connect(mapQueriesToProps)(ProductsScreen);

1 ответ

Вы должны импортировать gql from 'graphql-tag'Проверьте документы по миграции https://www.apollographql.com/docs/react/2.0-migration.html

Я не знаю, почему не работает функция connect apollo. Поэтому я решил проблему, вызвав функцию graphql вместо функции connect, и передал myQuery в качестве аргумента. как это:

экспорт по умолчанию graphql(myQuery)(MyComponent);

Другие вопросы по тегам