wap*_*apn 1 dart flutter flutter-widget flutter-hooks
我有使用 flutter hooks 的非常简单的情况:
class PositionedTiles extends HookWidget {
@override
Widget build(BuildContext context) {
final counterList = useState<List<int>>([1,2,3,4,5]);
return Scaffold(
body: Text("Counter: ${counterList.value}"),
floatingActionButton: FloatingActionButton(
onPressed: () => counterList.value.removeAt(0),
child: const Icon(Icons.sentiment_very_satisfied)),
);
);
}
Run Code Online (Sandbox Code Playgroud)
因此,单击后floatingActionButton打印的列表 ( counterList) 不会改变。我的结论是没有调用重建。
为什么 hook 没有看到列表已更改?
如何指示列表 ( counterList) 在调用后已更改onPressed以便重建?
要更新状态,您需要重新分配列表。
onPressed: () {
counterList.value = [...counterList.value..removeAt(0)];
log("${counterList.value}");
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2424 次 |
| 最近记录: |