修复 Dartz 包不可为空

问题描述

我将我的项目移至 sdk 2.12 并尝试使用不可为空的废话更新我的代码

现在我不明白如何修复 Dartz 包中的东西...

示例:

import 'package:dartz/dartz.dart';
import 'package:mobile_100asa/http.dart';

class StatusApi {
  String endpoint = 'https://myApi.net';

  Future<Either<Exception,String>?> getStatus() async { // Forced to make nullable response here
    try {
      var response = await dio.get('$endpoint/test');
      return Right(response);
    } catch (error) {
      print(error);
      return (Left(error)); // Error Here
    }
  }
}

我被迫做出可以为空的响应,然后我不知道 catch(error) 有什么问题。

它说:不能将参数类型“Object”分配给参数类型“Exception*”。

这应该如何解决

解决方法

您是否尝试过使用 dartz: ^0.10.0-nullsafety.1,它是空安全的预发布版本。