import 'package:mobx/mobx.dart'; abstract class TranasctionHistoryBase { TranasctionHistoryBase() : _isUpdating = false; @observable List transactions; bool _isUpdating; Future update() async { if (_isUpdating) { return; } try { _isUpdating = false; transactions = await fetchTransactions(); _isUpdating = true; } catch (e) { _isUpdating = false; rethrow; } } Future> fetchTransactions(); }