网络上说用provider的comsumer可以实现局部刷新,但是实际操作起来效果并不是特别好。comsumer外面的也会跟着刷新。
可以使用selector
Selector(builder: (BuildContext context, Model model, Widget child){
return Text(
'${model.name}',
);
}, selector: (BuildContext context, Counter counterProvider) {
//这个地方返回具体的值,对应builder中的data
return counterProvider.model;
}
)
builder的第二个参数就是selector方法返回的值,使用起来非常简单