小编Tho*_*mas的帖子

Flutter BLoC 库:在哪里保存 TextEditingController 对象:在 State 中、在 BLoC / Cubit 类中还是在小部件中?

使用 BLoC 库时,我们将所有变量存储在状态类中。但是在哪里存储 TextEditingController,它不会改变,但它的值会改变?

假设我有一个像这样的状态类(仅作为示例):

@freezed
abstract class EditItemState with _$EditItemState {
  const factory EditItemState.updated({
    TextEditingController titleController,
    ShoppingItem shoppingItem,
  }) = _ShoppingListLoaded;
}
Run Code Online (Sandbox Code Playgroud)

和肘级:

class EditItemCubit extends Cubit<EditItemState> {
  EditItemCubit() : super(EditItemState.updated());

  Future<void> titleUpdated() async {
    emit(
      EditItemState.updated().copyWith(
        shoppingItem: state.shoppingItem.copyWith(
          title: state.titleController.text,
        ),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

所以Cubit类逻辑看起来很混乱。我建议将此类控制器直接保留在小部件或 BLoC/Cubit 类中。这是正确的做法吗?

architecture flutter bloc cubit

16
推荐指数
1
解决办法
9878
查看次数

有没有办法在 Android Studio 的整个项目中自动修复所有可能的 lint 警告?

想象一下在正确设置 analysis_options.yaml 文件后,您有一个包含数千条 lint 警告的项目。现在你需要解决所有的混乱。手动完成这一切可能会花费您很多时间,而大多数问题都非常简单,例如“var”而不是“final”,双引号而不是单引号等。

有什么方法可以让 Android Studio在终端中或通过运行任何特定命令自动修复所有最简单的 lint 警告,例如“使用常量构造函数首选常量”等?

lint android-studio flutter

3
推荐指数
1
解决办法
457
查看次数

如何像在 Kotlin 中一样根据 Dart 中的 if 语句声明变量?

如何根据Dart中的if语句声明变量?在 Kotlin 中,它看起来像这样:

   val max = if (a > b) {
        a
    } else {
        b
    }
Run Code Online (Sandbox Code Playgroud)

在 Dart 中甚至有可能吗?

variables functional-programming dart kotlin flutter

2
推荐指数
2
解决办法
534
查看次数