指定时未为该类指定Flutter getter

时间:2018-11-16 14:45:46

标签: dart flutter

我要

  

[dart]没有为该类定义getter'currentPickup'   PickupEvent [undefined_getter]

event.currentPickup错误:

BB

在PickupEvent类中指定吸气剂并将其正确导入Pickup.dart中时。

import 'dart:async';

import 'package:bloc/bloc.dart';

import 'pickup.dart';
import '../../../models/models.dart';

class PickupBloc extends Bloc<PickupEvent, PickupState> {

  @override
  Stream<PickupState> mapEventToState(PickupState state, PickupEvent event) async* {
    if (state.isNotRunning) {
      stopwatch.start();
      timer = new Timer.periodic(new Duration(milliseconds: 200), updateTime);
      yield PickupState.running();
    }

    if (state.isRunning) {
      stopwatch.stop();
      timer.cancel();

      _pushPickup(event.currentPickup);

      yield PickupState.done();
    }
  }

有什么想法会导致这种情况吗?

1 个答案:

答案 0 :(得分:4)

错误消息是正确的。 ButtonPressed有这种吸气剂,但PickupEvent没有。

您可以将抽象吸气剂添加到基类中

abstract class PickupEvent {
  PickupModel get currentPickup;
}

或投射

_pushPickup((event as ButtonPressed).currentPickup);

如果您确定它将是ButtonPressed

您也可以

if(event is ButtonPressed) {
  _pushPickup(event.currentPickup);
}