こんにちは、私はプロバイダーが初めてです。ここに問題がある場所に手順を書きました。1-その後、モデルクラスにデータを持っているapiを呼び出しました。2-次にChangeNotiferクラスで、Modelクラスオブジェクトにあるリストのゲッターを作成したいと思います。モデル クラスの応答データをこの getter 変数に追加できません。
class CartProductNotifier with ChangeNotifier{
final _webServices = WebServices();
GetProductDetailsModel _getProductDetailsModel;
List<Vd> _vdList = [];
callApi(String handle) {
return _webServices.getProductDetails(handle).then((value) {
_getProductDetailsModel = value;
_vdList = value.data.product.vd; // after api call done data is in _vdList
return value;
});
}
}
今私はゲッターを作成しています
List<Vd> get vdata {
return _vdList;
}
しかし、ProductDetailsScreenクラスからこのゲッターを呼び出すと、空の配列または null が取得されます。
Consumer<CartProductListNotifier>(
builder: (context, value, child) {
return Text(
value.vdata[index].quantitySelectedByUser.toString(), //data is not coming here
style: TextStyle(
fontSize: kFontSize16, fontWeight: kMediumFontWeight, color: Colors.black),
);
},
),
現在、Consumer notifier にある Text ウィジェットの値を更新できません。
これは私のメインです.dart
MultiProvider(
providers: [
ChangeNotifierProvider(
create: (context) => CartProductListNotifier(),
),
],
child: MaterialApp(
title: 'Application',
debugShowCheckedModeBanner: false,
この問題を解決するか、プロバイダーを使用してモデル クラスで Api を呼び出す別の良い方法を教えてください。前もって感謝します。