flutter - 错误:提供者消费者 - 飞镖(return_of_invalid_type)
问题描述
错误:无法从方法“build”返回类型为“Consumer”的值,因为它的返回类型为“Widget”.dart(return_of_invalid_type)
import 'package:lojamobile/models/carrinho.dart';
import 'package:lojamobile/models/produtos.dart';
import 'package:provider/provider.dart';
@override
Widget build(BuildContext context) {
return Consumer<AppStateModel>(
builder: (context, model, child) {
return CustomScrollView(
slivers: <Widget>[
const CupertinoSliverNavigationBar(
largeTitle: Text('Carrinho de Compras'),
),
SliverSafeArea(
top: false,
minimum: const EdgeInsets.only(top: 4),
sliver: SliverList(
delegate: _buildSliverChildBuilderDelegate(model),
),
)
],
);
},
);
}
}
解决方案
包裹你的Consumer
内心Container
。那应该解决它。
尝试这个,
`
@override
Widget build(BuildContext context) {
return Container(
child: Consumer<AppStateModel>(
builder: (context, model, child) {
return CustomScrollView(
slivers: <Widget>[
const CupertinoSliverNavigationBar(
largeTitle: Text('Carrinho de Compras'),
),
SliverSafeArea(
top: false,
minimum: const EdgeInsets.only(top: 4),
sliver: SliverList(
delegate: _buildSliverChildBuilderDelegate(model),
),
)
],
)
)
},
);
}
}
`
推荐阅读
- tableau-api - 如何保存预测值以在 Tableau 中的计算中使用?
- c# - 如何在接口中使用接口
- r - Rcpp 返回相同的矩阵
- java - 如何在具有 void 方法的类中使用 spring @autowired 注释?
- flutter - RxDart 设置 Map on stream
- railsapps - 什么是使用 railsapps 创建的应用程序的默认密码
- windows - SAP VBScript 中的“找不到文件错误”
- css - 字幕内容未显示
- google-analytics - 谷歌分析 - 上次跟踪导致以前的跟踪记录发生变化
- reactjs - 如何在反应中从 404 错误页面重定向到主页?