我有多个多选下拉菜单,这些下拉菜单中有重复的选项。 下拉列表示例1-选项[A,B,C,D] 下拉菜单2-选项[D,E,F,G] 因此,我想在第一个下拉菜单中选择选项A,D时,也同时选择第二个下拉菜单的选项D。
问题是FlutterMultiChipSelect(程序包:flutter_multi_chip_select)小部件未提供诸如on_selection / on_change之类的任何事件,在该事件中我可以编写代码来更改其他multiselect下拉列表的选择。它在内部管理选择更改。
final menuItems = ["A","B","C","D"];
var selectedItems = [];
FlutterMultiChipSelect(
key: key,
elements: List.generate(
menuItems.length,
(index) => MultiSelectItem<String>.simple(
title: menuItems[index].toString(),
value: menuItems[index].toString()),
),
label: "Dropdown Select",
values: selectedItems,
),
我尝试了提供程序来实现它,但是提供程序在我调用注册了提供程序的对象的设置者/获取者之前无法工作。但是FlutterMultiChipSelect需要引用列表。所以我不能明确地打电话给二传手。
答案 0 :(得分:0)
我通过在 flutter 中使用 Provider 构造进行简单的状态管理来解决它。 3 个月前,当我还是新手时,使用 set_state(){} 来实现这一目标真的很困难。这仍然感觉具有挑战性,但多亏了 Provider,现在感觉非常简单。