我正在研究许多关于 bloc 的教程,并且遇到了一些不一致的问题。
我正在使用 Android Studio 并使用 Intellij v1.6.0 中的插件创建 bloc 代码。
对于 bloc_event,我继续看到类似这样的示例。
@immutable
abstract class FruitEvent extends Equatable {
FruitEvent([List props = const []]) : super(props);
}
当我生成我的 bloc 文件并查看生成的初始 _event 文件时,它看起来像这样。
@immutable
abstract class SongEvent extends Equatable {
const SongEvent();
}
如果我修改生成的代码以包含以下内容...
[List props = const []]) : super(props)
然后我收到以下错误“位置参数太多,预期为 0,找到 1”,它引用了上面显示的行末尾的道具。
如果我保留我的代码,因为它是由 bloc 插件生成的,然后尝试通过添加以下内容来实现我的事件......
class AddSong extends SongEvent {}
然后我得到一个错误“缺少'getter Equatable.props'的具体实现
这是我目前的 bloc/song_event.dart
import 'package:equatable/equatable.dart';
import 'package:meta/meta.dart';
@immutable
abstract class SongEvent extends Equatable {
const SongEvent();
}
class AddSong extends SongEvent {}
问题 我是否应该使用 FuitEvent 示例中包含道具的行?
我不明白我在这里缺少什么以及为什么当我尝试使用与许多教程中所示相同的方法时它显示错误。