带有 TypeError 异常的 Dart 结果
Dart Result with TypeError Exception
我有以下 Result
对象:
class Result<T> {
Result._();
factory Result.success(T t) = ResultSuccess<T>;
factory Result.error(T exception) = ResultError<T>;
}
class ResultError<T> extends Result<T> {
final T exception;
ResultError(this.exception) : super._();
}
class ResultSuccess<T> extends Result<T> {
final T value;
ResultSuccess(this.value) : super._();
}
我有一个函数 return 是一个 Future
和一个 Result
对象,如下所示:
Future<Result<bool>> doSomething() {
return future
.then((value) => Result.success(true))
.catch ((error) => Result.error(Exception()));
}
我想我正在以正确的方式使用 Generics,但是,我收到以下错误:
type 'ResultError<DatabaseException>' is not a subtype of type 'FutureOr<Result<bool>>'
如何使用 Result.error
return 一个 Exception
?
错误子类应该是这样的:
class ResultError<T> extends Result<T> {
final Object exception;
ResultError(this.exception) : super._();
}
类型T
是针对数据的,不是异常的类型。
我有以下 Result
对象:
class Result<T> {
Result._();
factory Result.success(T t) = ResultSuccess<T>;
factory Result.error(T exception) = ResultError<T>;
}
class ResultError<T> extends Result<T> {
final T exception;
ResultError(this.exception) : super._();
}
class ResultSuccess<T> extends Result<T> {
final T value;
ResultSuccess(this.value) : super._();
}
我有一个函数 return 是一个 Future
和一个 Result
对象,如下所示:
Future<Result<bool>> doSomething() {
return future
.then((value) => Result.success(true))
.catch ((error) => Result.error(Exception()));
}
我想我正在以正确的方式使用 Generics,但是,我收到以下错误:
type 'ResultError<DatabaseException>' is not a subtype of type 'FutureOr<Result<bool>>'
如何使用 Result.error
return 一个 Exception
?
错误子类应该是这样的:
class ResultError<T> extends Result<T> {
final Object exception;
ResultError(this.exception) : super._();
}
类型T
是针对数据的,不是异常的类型。