转向空安全后,我很难重构我的一些代码片段。
我有一个看起来像这样的方法
final Reducer<Exception> _errorReducer = combineReducers<Exception>([
TypedReducer<Exception, ErrorOccurredAction>(_errorOccurredReducer),
TypedReducer<Exception, ErrorHandledAction>(_errorHandledReducer),
]);
Exception _errorOccurredReducer(Exception _, ErrorOccurredAction action) {
return action.exception;
}
Exception _errorHandledReducer(Exception _, ErrorHandledAction action) {
return null;
}
由于 error
已初始化为 null,我如何允许 null 返回能够将其设置回 null。
最近开始接触静态类型工作流,所以我正在学习。
注意:如果有更好的做法来处理我正在努力实现的目标,请务必与我分享。
答案 0 :(得分:1)
如果变量接受 ?
,只需在类型后添加一个 null
。
Exception? _errorOccurredReducer(Exception _, ErrorOccurredAction action) {
return action.exception;
}
Exception? _errorHandledReducer(Exception _, ErrorHandledAction action) {
return null;
}