【问题标题】:Returning provider throws error on Main.dart page返回提供程序在 Main.dart 页面上引发错误
【发布时间】:2021-11-03 01:45:10
【问题描述】:

我正在按照 youtube 教程使用 chopper,我之前从未使用过提供程序,当我执行以下操作时出现错误。如果我不使用提供程序,我会在未找到提供程序的应用屏幕上收到错误消息。

我在退货供应商行和制造商行上遇到错误

import 'package:flutter/material.dart';
//import 'package:flutter_local_notifications/flutter_local_notifications.dart';
import 'package:provider/provider.dart';
import 'package:relationship/screens/weekly_view.dart';
import 'package:relationship/services/chopper_services.dart';

void main() => MyApp();

class MyApp extends StatelessWidget {
  Widget build(BuildContext context) {
    return Provider(
        builder: (_) => PersonalPostingService.create(),
        dispose: (context, PersonalPostingService service) =>
            service.client.dispose(),
        child: MaterialApp(
          home: WeeklyData(),
        ));
  }
}

这些是错误

The named parameter 'create' is required, but there's no corresponding argument.
Try adding the required argument.

The argument type 'Widget Function(BuildContext)' can't be assigned to the parameter type 'Widget Function(BuildContext, Widget?)?'.

The return type 'PersonalPostingService' isn't a 'Widget', as required by the closure's context.

我正在使用 chopper API,但它不会引发任何错误。我有本地通知代码,但我在 main.dart 文件中对其进行了注释

【问题讨论】:

    标签: flutter dart provider chopper


    【解决方案1】:

    在创建 Provider 小部件时,其中一个必需参数曾经是 builder,它需要一个函数来创建提供的类,该参数已被重命名为 create,因此替换了单词 builder使用create 应该可以解决问题,或者将您的提供程序版本降级到教程中使用的相同版本。

    return Provider(
            create: (_) => PersonalPostingService.create(),
            dispose: (context, PersonalPostingService service) =>
                service.client.dispose(),
            child: MaterialApp(
              home: WeeklyData(),
            ));
    

    我还建议进入提供程序包的更新日志,您可以在 pub.dev 上找到它,它应该显示教程版本与您当前版本之间的所有更改。这样,如果出现其他问题,您可以去那里检查是否有任何可能导致该问题的重大更改。

    【讨论】:

    • 现在我没有收到错误我得到一个空白屏幕
    猜你喜欢
    • 2017-08-16
    • 2016-12-22
    • 1970-01-01
    • 1970-01-01
    • 2019-03-26
    • 1970-01-01
    • 2014-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多