我正在try 将GraphQL_Ffltter(https://pub.dev/packages/graphql_flutter)用于我的MVVM架构.(https://stacked.filledstacks.com/docs/getting-started/overview)当我try 运行我的代码时,从GraphQL_Ffltter包中收到以下错误

`../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/graphql-5.1.2/lib/src/links/websocket_link/websocket_client.dart:577:7:错误:非抽象类‘GraphQLWebSocketChannel’缺少以下成员的实现:

  • WebSocketChannel.ready 试着 Select
  • 提供一个实现,
  • 从超类或混合继承实现,
  • 将类标记为抽象类,或
  • 提供"noSuchMethod"实现.

类GraphQLWebSocketChannel扩展StreamChannelMixin<Dynamic> ^^ ../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/web_socket_channel-2.3.0/lib/src/channel.dart:56:22:上下文:这里定义了‘WebSocketChannel.Ready’. 最终future <void>Ready=Future.Value();`

这是我在main.dart文件中的代码.只要我导入了包,我就会收到错误.

    import 'package:flutter/material.dart';
    import 'package:testing/app/app.locator.dart';
    import 'package:testing/ui/common/app_colors.dart';
    import 'package:testing/ui/setup/setup_bottom_sheet_ui.dart';
    import 'package:testing/ui/setup/setup_dialog_ui.dart';
    import 'package:stacked_services/stacked_services.dart';

    import 'package:graphql_flutter/graphql_flutter.dart';

    import 'app/app.router.dart';

    void main() {
      setupLocator();
      setupDialogUi();
      setupBottomSheetUi();

      runApp(const MyApp());
    }

    class MyApp extends StatelessWidget {
      const MyApp({Key? key}) : super(key: key);

      @override
      Widget build(BuildContext context) {
        HttpLink httpLink = HttpLink("https://api.github.com/graphql");

        AuthLink authLink = AuthLink(
          getToken: () async => 'Bearer PERSONAL_ACCESS_TOKEN',
        );

        Link link = authLink.concat(httpLink);

        ValueNotifier<GraphQLClient> qlClient = ValueNotifier(
          GraphQLClient(
            link: link,
            // The default store is the InMemoryStore, which does NOT persist to disk
            cache: GraphQLCache(store: HiveStore()),
          ),
        );

        return GraphQLProvider(
            client: qlClient,
            child: MaterialApp(
              title: 'Flutter Demo',
              theme: Theme.of(context).copyWith(
                primaryColor: kcBackgroundColor,
                focusColor: kcPrimaryColor,
                textTheme: Theme.of(context).textTheme.apply(
                      bodyColor: Colors.black,
                    ),
              ),
              initialRoute: Routes.startupView,
              onGenerateRoute: StackedRouter().onGenerateRoute,
              navigatorKey: StackedService.navigatorKey,
              navigatorObservers: [
                StackedService.routeObserver,
              ],
            ));
      }
    }

推荐答案

我昨天收到了这个错误.我将其添加到pubspec.yaml编写了以下几行代码,它对我有效

dependency_overrides:
  web_socket_channel: 2.2.0

LINK-https://github.com/flutter/cocoon/pull/2405(转到"更改的文件"部分)

Flutter相关问答推荐

为什么Spotify Auth API返回400,而";code_verier不正确?

Ffmpeg_kit_fltter:^6.0.3版权问题

有没有可能不在BlocBuilder中重新构建内容?

Flutter为什么不;没有ListView.iterable()构造函数?

打开键盘时屏幕组件会被压扁

Flutter CarouselSlider中如何防止右图与放大的中心图重叠?

Flutter - Stripe:类型List 不是类型Map 的子类型? method_channel_stripe.dart 中的错误:263

显示图像的放大部分

Flutter 包错误:此应用程序使用的是已弃用的 Android 嵌入版本

断言失败:std::move(hal_2_1_verifier).Run(). 初始化,LE音频客户端至少需要Bluetooth音频HAL V2.1

splash_screen 没有被推送到登录页面

PreferredSizeWidget类不能用作混合,因为它既不是混合类也不是混合

无状态小部件被奇怪地重建

将 String 与 List 元素进行比较时出现问题

Android Studio - Electric Eel 2022.1.1 更新 destruct 了 dart 文件图标

CircleAvatar 在 ListTile 中领先

为什么容器会填满整个空间?

如何将变量翻译成其他语言

try 为两个下拉值添加共享首选项,但在 Flutter 上显示错误断言失败:?

我想将我的模型类对象发送到下一个屏幕之前我这样做首先我在第二个屏幕中声明对象