【发布时间】:2020-05-29 14:34:21
【问题描述】:
我想为我的应用程序实现 Provider,在做了一些研究后,我发现我必须为我的 Data 类实现 ChangeNotifier 以在“天数”发生变化时更新 UI。
我见过有人在 setter 方法中编写 notifyListeners(),但总是针对单个属性,从不针对列表。什么是正确的实现?
谢谢!
这是我的班级和名单:
class Data with ChangeNotifier {
List<Day> days = [
Day(
name: 'Monday',
transactions: [
Transaction(
isExpense: true,
name: 'Pizza',
transactionType: TransactionType.food,
amount: '120€',
),
Transaction(
isExpense: true,
name: 'EDEKA',
transactionType: TransactionType.payment,
amount: '120€',
),
],
),
Day(
name: 'Tuesday',
transactions: [
Transaction(
isExpense: true,
name: 'Sushi',
transactionType: TransactionType.food,
amount: '120€',
),
Transaction(
isExpense: true,
name: 'Lidl',
transactionType: TransactionType.payment,
amount: '120€',
),
Transaction(
isExpense: false,
name: 'Einkommen',
transactionType: TransactionType.payment,
amount: '120€',
),
],
),
];
}
【问题讨论】: