Постоянное получение ошибки при работе над флаттером проекта GraphQL - PullRequest
0 голосов
/ 27 февраля 2020
E/flutter (25592): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: Error on line 2, column 65: Expected ':' followed by argument value
E/flutter (25592):   ╷
E/flutter (25592): 2 │       getWarehouseProduct(warehouseId:5e56436ffa79252ca47e0d4b, warehouseProductId:5e564370fa79252ca47e0d59){
E/flutter (25592):   │                                                                 ^^^^^^^^^^^^^^^^^^
E/flutter (25592):   ╵
E/flutter (25592): #0      _Parser._expectToken
package:gql/…/language/parser.dart:61
E/flutter (25592): #1      _Parser._parseArgument
package:gql/…/language/parser.dart:430
E/flutter (25592): #2      _Parser._parseNonConstArgument
package:gql/…/language/parser.dart:425
E/flutter (25592): #3      _Parser._parseMany

Это полная ошибка. Определение метода:

String getWarehouseProduct(String storeId, String productId) {
    return """
    query{
      getWarehouseProduct(warehouseId:$storeId, warehouseProductId:$productId){
        id
        product{
          title{
            value
            locale
          }
        }        
      }
    }
    """;
  }

И это использование.

void fillList() async {
    QueryMutation queryMutation = QueryMutation();
    GraphQLClient _client = graphQLConfiguration.clientToQuery();

    QueryResult result = await _client.query(
      QueryOptions(
        document: queryMutation.getWarehouseProduct("5e56436ffa79252ca47e0d4b", "5e564370fa79252ca47e0d59"),
      ),
    );

    if (!result.hasException) {
      for (var i = 0; i < result.data["getWarehouseProduct"].length; i++) {
        setState(() {
          listMerchant.add(
            Merchant(
              id: result.data["getWarehouseProduct"][i]["id"],
              name: result.data["getWarehouseProduct"][i]["product"]["title"]["value"],
              logo: result.data["getWarehouseProduct"][i]["product"]["images"]["url"],
            ),
          );
        });
      }
    }
  }

и это информация о конфигурации graphql

class GraphQLConfiguration {
  static HttpLink httpLink = HttpLink(
    uri: "http://192.168.1.3:5555/graphql",
  );

  ValueNotifier<GraphQLClient> client = ValueNotifier(
    GraphQLClient(
      link: httpLink,
      cache: OptimisticCache(dataIdFromObject: typenameDataIdFromObject),
    ),
  );

  GraphQLClient clientToQuery() {
    return GraphQLClient(
      cache: OptimisticCache(dataIdFromObject: typenameDataIdFromObject),
      link: httpLink,
    );
  }
}

Для любых указанных c вопросы, которые вы можете иметь, пожалуйста, прокомментируйте это. Я не знал, что вставить, поэтому я не включил много информации. Я использовал эту точную конфигурацию для получения результатов. так что я не думаю, что это проблема. Полагаю, для этого нужен какой-то токен, если да, то как я могу его проверить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...