我有一个使用riverpod添加项目的列表。我想替换已选择列表中的项目。
我尝试过的:
class SelectItemNotifier extends StateNotifier<List<SelectedMedia>> {
SelectItemNotifier() : super([]);
void addItem() {
state = [...state, SelectedMedia(
file: file
duration: duration,
id: id,
type: type,
videoDuration: videoDuration
),
];
}
void replaceList(int index, SelectedMedia futureFile) {
state.replaceRange(index, index + 1, [futureFile]);
}
}
在正常情况下,我很容易做到
void replaceList(int index, List newList) {
lists.replaceRange(index, index + 1, [newList]);
}
但对江荚号不起作用。
1条答案
按热度按时间wqnecbli1#
应该是这样的
如果状态是不可变的创建一个局部临时变量