flutter - 冻结的块,否则语句不应该是错误的,尽管它已实现
问题描述
我正在使用冻结的集团。我从来没有给出state.isOpenBottomSheet
的值false
,尽管 else 会在state.inputTextValue.input.isRight()
发生时执行!
代码是:
if (state.isOpenBottomSheet) {
context
.read<HomeCubit>()
.addNewNoteButton(isOpenBottomSheet: true);
_scaffoldKey.currentState!
.showBottomSheet(
(context) => const AddNewNoteBottomSheet())
.closed
.then(
(_) => context
.read<HomeCubit>()
.addNewNoteButton(isOpenBottomSheet: true),
);
} else {
if (state.inputTextValue.input.isRight()) {
final DBHelper _dbHelper = DBHelper();
await _dbHelper.insertNodeToDB(
noteDatabaseModel: NoteDatabaseModel(
content: state.inputTextValue.input
.getOrElse(() => 'invalid note'),
status: state.radioValue,
),
);
}
}
国家代码:
class HomeCubit extends Cubit<HomeState> {
HomeCubit() : super(HomeState.init());
void addNewNoteButton({required bool isOpenBottomSheet}) async {
emit(state.copyWith(
isOpenBottomSheet: isOpenBottomSheet,
));
}
集团代码:
@freezed
abstract class HomeState with _$HomeState {
const factory HomeState({
required bool isOpenBottomSheet,
}) = AddNewNoteClicked;
factory HomeState.init() => HomeState(
isOpenBottomSheet: true,
);
}
解决方案
推荐阅读
- blazor - 在 PDF 和 PowerPoint 中创建带有导出功能的图形 Blazor 组件
- php - 使控制器在 symfony 项目中渲染单个自定义模板,使用奏鸣曲作为管理部分
- android-studio - 我该如何解决这个错误?java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“xxx”
- python - 使用 pip 安装软件包有效,但使用 setuptools 不适用于本地 pypi
- python - 使用 pyomo.environ 创建多元分段函数
- python - 未来从未检索到任务异常:
我有一个以内联模式发送星座的机器人代码:
import re from aiogram.types import InputTextMessageContent, InlineQuery, InlineQueryResultArt
- java - 在 Thymeleaf 模板中使用 @ManyToOne 值 - 属性 '' 不可读或具有无效的 getter 方法是否 getter 的返回类型
- rust - 意外的 tokio::task::spawn_blocking 行为
- angular - 为什么 Angular 会覆盖 idex.html 中的 base-href
- sql - 查找成功和失败记录的总数