我正在学习许多关于使用Flutter的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个",这个错误与上面显示的 props 有关。
如果我将代码保留为 bloc 插件生成的样子,然后尝试通过添加以下内容来实现我的事件...
class AddSong extends SongEvent {}
然后我收到了一个"Missing concrete implementation of '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示例中,我是否应该使用带有props的行?
我不明白我缺少什么,以及为什么当我尝试使用许多教程中所示的相同方法时会显示错误。