【发布时间】:2020-08-23 16:56:40
【问题描述】:
我是一名 Android 开发人员,是 Flutter 的新手。我真的很喜欢 Mobx 的工作方式,因为它让我想起了 Android 的 ViewModel。顺便说一句,当我创建 ViewModel 时,我喜欢将存储库作为参数传递给它,这样我就可以使用不同的数据源(即本地或云)对其进行测试。
所以,这是我现在的课。
import 'package:mobx/mobx.dart';
part 'create_bill_controller.g.dart';
class CreateBillController = _CreateBillControllerBase
with _$CreateBillController;
abstract class _CreateBillControllerBase with Store {
final appBarTitle = 'Criar Conta';
final criarConta = 'Criar conta';
final nomeDaConta = 'Nome da conta';
final seuNome = 'Seu nome';
@action
createBill(String billname, String userName) {
// here, dataSource should be given in a constructor
datasource.createBill(billName, userName);
}
}
如何将 DataSource(存储库)作为参数传递给此类?
【问题讨论】:
-
我不是 100% 确定,但如果 Dart 与 JS 很接近,那么您可能需要使用
constructor函数?并通过它传递所有动态的东西dart.dev/guides/language/language-tour#constructors -
嗨,@Danila。我也是这么想的,但是我使用的是 MobX,当我尝试在抽象类中使用构造函数时它不起作用。
标签: flutter parameters constructor controller mobx