flutter ValueNotifier 监听失败
作者:
小星星吃KFC | 来源:发表于
2020-08-12 21:18 被阅读0次
var listNotifier = ValueNotifier<List<String>>([]);
@override
void initState() {
super.initState();
listNotifier.addListener(() {
print('listNotifier = ${listNotifier.value}');
});
}
listNotifier.value.add(Random().nextInt(100).toString());
print(listNotifier.value.hashCode);
原理与iOS的kvo原理类似.list添加元素,未改变地址,所以无法触发监听,利用深copy 重新赋值,就触发监听了
/// 正常的赋值
listNotifier.value.add(Random().nextInt(100).toString());
///重点,进行深copy
listNotifier.value = [...listNotifier.value];
print(listNotifier.value.hashCode);
本文标题:flutter ValueNotifier 监听失败
本文链接:https://www.haomeiwen.com/subject/pdzmdktx.html
网友评论