繁体   English   中英

使用 flutter Provider 小部件时出现以下错误

[英]iget the following error while using the flutter Provider widget

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

在 flutter 中使用提供程序小部件时出现以下错误

    import 'package:todoey_flutter/Screens/tasks_screens.dart';
    import 'package:todoey_flutter/models/task_data.dart';

      void main() {
          runApp(MyApp());
       }
  class MyApp extends StatelessWidget {
     @override
    Widget build(BuildContext context) {
return ChangeNotifierProvider(
  builder: (context)=> TaskData(),
  child: MaterialApp(
    home:TasksScreen(),
  ),
);
 }
  }

以下是包含此 TaskData class 的文件中的代码

  import 'package:flutter/cupertino.dart';
  import 'package:flutter/material.dart';
  import 'task.dart';
  class TaskData extends ChangeNotifier{
     List<Task> tasks =[
       Task(name: 'buy milk'),
       Task(name:'buy eggs'),
       Task(name: 'buy bread'),

                        ];
                        }

https://pub.dev/packages/provider#migration-from-v3x0-to-v400
经典providersbuilder应该被替换为create
您可以更改buildercreate

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return ChangeNotifierProvider(
      create: (context) => TaskData(),
      child: MaterialApp(
        home: TasksScreen(),
      ),
    );
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM