Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter dio http get error ArgumentError(无效参数)(输入):不能为null)颤振_Flutter_Dart_Dio - Fatal编程技术网

Flutter dio http get error ArgumentError(无效参数)(输入):不能为null)颤振

Flutter dio http get error ArgumentError(无效参数)(输入):不能为null)颤振,flutter,dart,dio,Flutter,Dart,Dio,我这里有个错误,可能是什么问题 if(input==null)抛出新ArgumentError.notNull('input'); ArgumentError(无效参数)(输入):不能为null 有人能帮我吗 尝试使用DioFlatter软件包时,遇到了get呼叫的问题,我在某个地方丢失了,不确定是什么问题 国家管理局是弗利特河堡 服务文件: Future<List<DefaultModel>> getDefaults() async { try { final re

我这里有个错误,可能是什么问题

if(input==null)抛出新ArgumentError.notNull('input'); ArgumentError(无效参数)(输入):不能为null


有人能帮我吗

尝试使用DioFlatter软件包时,遇到了get呼叫的问题,我在某个地方丢失了,不确定是什么问题

国家管理局是弗利特河堡

服务文件:

Future<List<DefaultModel>> getDefaults() async {
try {
  final response =
      await _dio.get("https://5f279ddaf5d27e001612e29b.mockapi.io/Default");
  print(response);
  if (response.statusCode == 200) {
    final results = List<Map<String, dynamic>>.from(response.data);
    List<DefaultModel> defaults = results
        .map((defaulteData) => DefaultModel.fromMap(defaulteData))
        .toList(growable: false);

    return defaults;
  } else {
    return null;
  }
} on DioError catch (e) {
  throw GeneralException.fromDioError(e);
}
}
import 'dart:convert';

class DefaultModel {
  String id;
  DateTime createdAt;
  String description;
  String memberId;
  String departmentId;
  String reason;
  String taskPriority;
  String impactToMission;
  String stepsToAvoid;
  DateTime defaultDate;
  DateTime updatedDate;
  String hodPrayschit;
  String hodComments;
  DateTime hodDefaultDeadline;
  DateTime sevakAcknowledgeDate;
  String hodId;
  String hrdComments;
  String maulikjiComments;
  String cardType;
  DateTime startDate;
  DateTime endDate;

  DefaultModel(
      {this.id,
      this.createdAt,
      this.description,
      this.memberId,
      this.departmentId,
      this.reason,
      this.taskPriority,
      this.impactToMission,
      this.stepsToAvoid,
      this.defaultDate,
      this.updatedDate,
      this.hodPrayschit,
      this.hodComments,
      this.hodDefaultDeadline,
      this.sevakAcknowledgeDate,
      this.hodId,
      this.hrdComments,
      this.maulikjiComments,
      this.cardType,
      this.startDate,
      this.endDate});

  Map<String, dynamic> toMap() {
    return {
      'id': id,
      'createdAt': createdAt.toString(),
      'description': description,
      'memberId': memberId,
      'departmentId': departmentId,
      'reason': reason,
      'taskPriority': taskPriority,
      'impactToMission': impactToMission,
      'stepsToAvoid': stepsToAvoid,
      'defaultDate': defaultDate.toString(),
      'updatedDate': updatedDate.toString(),
      'hodPrayschit': hodPrayschit,
      'hodComments': hodComments,
      'hodDefaultDeadline': hodDefaultDeadline.toString(),
      'sevakAcknowledgeDate': sevakAcknowledgeDate.toString(),
      'hodId': hodId,
      'hrdComments': hrdComments,
      'maulikjiComments': maulikjiComments,
      'cardType': cardType,
      'startDate': startDate.toString(),
      'endDate': endDate.toString(),
    };
  }

  factory DefaultModel.fromMap(Map<String, dynamic> map) {
    if (map == null) return null;

    return DefaultModel(
      id: map['id'],
      createdAt: DateTime.parse(map['created']),
      description: map['description'],
      memberId: map['memberId'],
      departmentId: map['departmentId'],
      reason: map['reason'],
      taskPriority: map['taskPriority'],
      impactToMission: map['impactToMission'],
      stepsToAvoid: map['stepsToAvoid'],
      defaultDate: DateTime.parse(map['defaultDate']),
      updatedDate: DateTime.parse(map['updatedDate']),
      hodPrayschit: map['hodPrayschit'],
      hodComments: map['hodComments'],
      hodDefaultDeadline: DateTime.parse(map['hodDefaultDeadline']),
      sevakAcknowledgeDate: DateTime.parse(map['sevakAcknowledgeDate']),
      hodId: map['hodId'],
      hrdComments: map['hrdComments'],
      maulikjiComments: map['maulikjiComments'],
      cardType: map['cardType'],
      startDate: DateTime.parse(map['startDate']),
      endDate: DateTime.parse(map['endDate']),
    );
  }

  String toJson() => json.encode(toMap());

  List<DefaultModel> defaultFromJson(String jsonData) {
    final data = json.decode(jsonData);
    return List<DefaultModel>.from(
        data.map((item) => DefaultModel.fromJson(item)));
  }

  factory DefaultModel.fromJson(String source) =>
      DefaultModel.fromMap(json.decode(source));
}

Future getDefaults()异步{
试一试{
最后答复=
等待"得到"https://5f279ddaf5d27e001612e29b.mockapi.io/Default");
打印(回复);
如果(response.statusCode==200){
最终结果=List.from(response.data);
列表默认值=结果
.map((defaulteData)=>DefaultModel.fromMap(defaulteData))
.toList(可增长:假);
返回默认值;
}否则{
返回null;
}
}关于错误捕获(e){
抛出GeneralException.fromDioError(e);
}
}
添加模型文件:

Future<List<DefaultModel>> getDefaults() async {
try {
  final response =
      await _dio.get("https://5f279ddaf5d27e001612e29b.mockapi.io/Default");
  print(response);
  if (response.statusCode == 200) {
    final results = List<Map<String, dynamic>>.from(response.data);
    List<DefaultModel> defaults = results
        .map((defaulteData) => DefaultModel.fromMap(defaulteData))
        .toList(growable: false);

    return defaults;
  } else {
    return null;
  }
} on DioError catch (e) {
  throw GeneralException.fromDioError(e);
}
}
import 'dart:convert';

class DefaultModel {
  String id;
  DateTime createdAt;
  String description;
  String memberId;
  String departmentId;
  String reason;
  String taskPriority;
  String impactToMission;
  String stepsToAvoid;
  DateTime defaultDate;
  DateTime updatedDate;
  String hodPrayschit;
  String hodComments;
  DateTime hodDefaultDeadline;
  DateTime sevakAcknowledgeDate;
  String hodId;
  String hrdComments;
  String maulikjiComments;
  String cardType;
  DateTime startDate;
  DateTime endDate;

  DefaultModel(
      {this.id,
      this.createdAt,
      this.description,
      this.memberId,
      this.departmentId,
      this.reason,
      this.taskPriority,
      this.impactToMission,
      this.stepsToAvoid,
      this.defaultDate,
      this.updatedDate,
      this.hodPrayschit,
      this.hodComments,
      this.hodDefaultDeadline,
      this.sevakAcknowledgeDate,
      this.hodId,
      this.hrdComments,
      this.maulikjiComments,
      this.cardType,
      this.startDate,
      this.endDate});

  Map<String, dynamic> toMap() {
    return {
      'id': id,
      'createdAt': createdAt.toString(),
      'description': description,
      'memberId': memberId,
      'departmentId': departmentId,
      'reason': reason,
      'taskPriority': taskPriority,
      'impactToMission': impactToMission,
      'stepsToAvoid': stepsToAvoid,
      'defaultDate': defaultDate.toString(),
      'updatedDate': updatedDate.toString(),
      'hodPrayschit': hodPrayschit,
      'hodComments': hodComments,
      'hodDefaultDeadline': hodDefaultDeadline.toString(),
      'sevakAcknowledgeDate': sevakAcknowledgeDate.toString(),
      'hodId': hodId,
      'hrdComments': hrdComments,
      'maulikjiComments': maulikjiComments,
      'cardType': cardType,
      'startDate': startDate.toString(),
      'endDate': endDate.toString(),
    };
  }

  factory DefaultModel.fromMap(Map<String, dynamic> map) {
    if (map == null) return null;

    return DefaultModel(
      id: map['id'],
      createdAt: DateTime.parse(map['created']),
      description: map['description'],
      memberId: map['memberId'],
      departmentId: map['departmentId'],
      reason: map['reason'],
      taskPriority: map['taskPriority'],
      impactToMission: map['impactToMission'],
      stepsToAvoid: map['stepsToAvoid'],
      defaultDate: DateTime.parse(map['defaultDate']),
      updatedDate: DateTime.parse(map['updatedDate']),
      hodPrayschit: map['hodPrayschit'],
      hodComments: map['hodComments'],
      hodDefaultDeadline: DateTime.parse(map['hodDefaultDeadline']),
      sevakAcknowledgeDate: DateTime.parse(map['sevakAcknowledgeDate']),
      hodId: map['hodId'],
      hrdComments: map['hrdComments'],
      maulikjiComments: map['maulikjiComments'],
      cardType: map['cardType'],
      startDate: DateTime.parse(map['startDate']),
      endDate: DateTime.parse(map['endDate']),
    );
  }

  String toJson() => json.encode(toMap());

  List<DefaultModel> defaultFromJson(String jsonData) {
    final data = json.decode(jsonData);
    return List<DefaultModel>.from(
        data.map((item) => DefaultModel.fromJson(item)));
  }

  factory DefaultModel.fromJson(String source) =>
      DefaultModel.fromMap(json.decode(source));
}

导入'dart:convert';
类默认模型{
字符串id;
创建日期时间;
字符串描述;
字符串成员ID;
字符串departmentId;
字符串原因;
字符串优先级;
弦冲击断丝;
避免串级;
日期时间默认日期;
日期时间更新日期;
串珠岩;
串珠;
日期时间和截止日期;
日期时间七确认;
弦豪德;
字符串HRD注释;
字符串maulikji注释;
字符串卡片类型;
日期时间开始日期;
日期时间结束日期;
默认模型(
{this.id,
这个.createdAt,
这个.说明,,
这个.memberId,
这个.部门ID,
这个原因,,
这是一个优先事项,
这是我的使命,
这是我们要避免的,
这个日期,
这是最新的日期,
这是hodPrayschit,
这是我的建议,
这是最后期限,
这是我承认的,
这个,霍德,
这是我的建议,
这是莫利基的评论,
这个.卡片类型,
这个,开始日期,
此参数为.endDate});
映射toMap(){
返回{
“id”:id,
“createdAt”:createdAt.toString(),
“描述”:描述,
“memberId”:memberId,
“部门ID”:部门ID,
"理性":理性,,
“taskPriority”:taskPriority,
“impactToMission”:impactToMission,
“stepsToAvoid”:stepsToAvoid,
“defaultDate”:defaultDate.toString(),
'UpdateDate':UpdateDate.toString(),
“hodPrayschit”:hodPrayschit,
“hodComments”:hodComments,
“hodDefaultDeadline”:hodDefaultDeadline.toString(),
“sevakackknowledgedate”:sevakackknowledgedate.toString(),
“hodId”:hodId,
“HRD注释”:HRD注释,
“maulikjiComments”:maulikjiComments,
“cardType”:cardType,
“startDate”:startDate.toString(),
“endDate”:endDate.toString(),
};
}
factory DefaultModel.fromMap(映射){
if(map==null)返回null;
返回默认模型(
id:map['id'],
createdAt:DateTime.parse(映射['created']),
描述:地图['description'],
memberId:map['memberId'],
部门ID:map['departmentId'],
原因:映射['reason'],
taskPriority:map['taskPriority'],
impactToMission:map['impactToMission'],
stepsToAvoid:map['stepsToAvoid'],
defaultDate:DateTime.parse(映射['defaultDate']),
UpdateDate:DateTime.parse(映射['UpdateDate']),
hodPrayschit:map['hodPrayschit'],
hodComments:map['hodComments'],
HoddeFaultDailate:DateTime.parse(映射['HoddeFaultDailate']),
sevakackknowledgedate:DateTime.parse(映射['sevakackknowledgedate']),
hodId:map['hodId'],
hrdComments:map['hrdComments'],
maulikjiComments:map['maulikjiComments'],
cardType:map['cardType'],
startDate:DateTime.parse(映射['startDate']),
endDate:DateTime.parse(映射['endDate']),
);
}
字符串toJson()=>json.encode(toMap());
列表defaultFromJson(字符串jsonData){
最终数据=json.decode(jsonData);
返回列表。从(
data.map((item)=>DefaultModel.fromJson(item));
}
factory DefaultModel.fromJson(字符串源)=>
DefaultModel.fromMap(json.decode(源));
}
Page.dart

import 'package:flutter/material.dart';
import 'package:flutter_riverpod/all.dart';
import 'package:srmd_timesheet_flutter_app/models/default_model.dart';
import 'package:srmd_timesheet_flutter_app/utils/exception.dart';
import 'package:srmd_timesheet_flutter_app/widgets/app_bar_widget.dart';
import 'package:srmd_timesheet_flutter_app/widgets/badge_layout_widget.dart';
import 'package:srmd_timesheet_flutter_app/services/default_service.dart';
import 'package:srmd_timesheet_flutter_app/widgets/error_body_widget.dart';

final defaultFutureProvider =
    FutureProvider.autoDispose<List<DefaultModel>>((ref) async {
  ref.maintainState = true;

  final defaultService = ref.watch(defaultServiceProvider);
  final prayschits = await defaultService.getDefaults();
  return prayschits;
});

class AllDefaultPage extends ConsumerWidget {
  final String yellowCard = "yellow-card@3x.png";
  final String redCard = "red-card@3x.png";

  @override
  Widget build(BuildContext context, ScopedReader watch) {
    return Scaffold(
      appBar: MyAppBar(
        context,
        titleText: "PAST DEFAULTS",
        isChipLayout: false,
      ),
      body: watch(defaultFutureProvider).when(
        error: (e, s) {
          if (e is GeneralException) {
            return ErrorBody(message: e.message);
          }
          return ErrorBody(message: "Oops, something unexpected happened");
        },
        loading: () => Center(
          child: CircularProgressIndicator(),
        ),
        data: (prayschits) {
          return RefreshIndicator(
            onRefresh: () {
              return context.refresh(defaultFutureProvider);
            },
            child: SingleChildScrollView(
              child: Padding(
                padding: const EdgeInsets.all(22.0),
                child: Container(
                  child: Column(
                    children: prayschits
                        .map((prayschit) => BadgeLayout(cardImage: redCard))
                        .toList(),
                  ),
                ),
              ),
            ),
          );
        },
      ),
    );
  }
}

// SizedBox(height: 18.0),
导入“包装:颤振/材料.省道”;
进口“包装:颤振_riverpod/all.dart”;
导入“package:srmd_timesheet_flatter_app/models/default_model.dart”;
导入“package:srmd_timesheet_flatter_app/utils/exception.dart”;
导入“package:srmd_timesheet_flatter_app/widgets/app_bar_widget.dart”;
导入“package:srmd_timesheet_flatter_app/widgets/badge_layout_widget.dart”;
导入“package:srmd_timesheet_flatter_app/services/default_service.dart”;
导入“package:srmd_timesheet_flatter_app/widgets/error_body_widget.dart”;
最终defaultFutureProvider=
FutureProvider.autoDispose((ref)异步{
ref.maintaintState=true;
最终defaultService=ref.watch(defaultServiceProvider);
final prayschits=wait defaultService.getDefaults();
返回prayschits;
});
类AllDefaultPage扩展了ConsumerWidget{
最终字符串yellowCard=“黄色-card@3x.png";
最终字符串redCard=“红色-card@3x.png";
@凌驾
小部件构建(BuildContext上下文,ScopeDrawer监视){
返回脚手架(
appBar:MyAppBar(
上下文
titleText:“过去的默认值”,
isChipLayout:false,
),
正文:手表(defaultFutureProvider)。何时(
错误:(e,s){
if(e为一般例外){
返回ErrorBody(消息:e.message);
}
返回ErrorBody(消息:“哦,发生了意外的事情”);
},
加载:()=>中心(
子对象:CircularProgressIndicator(),
),
数据:(prayschits){
返回刷新指示器(
onRefresh:(){
返回context.refresh(defaultFutureProvider);
},
子:SingleChildScrollView(