Сохранение корзины после закрытия приложения

У меня есть корзина и мне надо, чтоб товары которые были добавлены в корзину были сохранены после закрытия приложения.

// import 'package:flutter_app_1/models/Cart.dart';
import 'package:flutter_app_1/models/Cart_Product.dart';
import 'package:flutter_app_1/widget/cart_list_item.dart';
import 'package:provider/provider.dart';

class CartPage extends StatelessWidget {
  CartPage({Key key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    final cartData = Provider.of<CartDataProvider>(context);

    return Scaffold(
        appBar: AppBar(
          title: Text('Корзина'),
        ),
        body: cartData.cartItems.isEmpty
            ? Card(
                color: Colors.greenAccent,
                elevation: 5.0,
                margin: const EdgeInsets.all(30.0),
                child: Container(
                  height: 100,
                  width: double.infinity,
                  alignment: Alignment.center,
                  child:
                      Text('Корзина пустая', style: TextStyle(fontSize: 25.0)),
                ),
              )
            : Column(
                children: <Widget>[
                  Divider(),
                  Row(
                    mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                    children: <Widget>[
                      Text(
                        'Стоимость ' + cartData.totalAmount.toStringAsFixed(2),
                        style: TextStyle(fontSize: 20.0),
                      ),
                      // MaterialButton(
                      //   onPressed: () {
                      //     cartData.clear();
                      //   },
                      //   color: Colors.greenAccent,
                      //   child: Text('Купить'),
                      // ),
                    ],
                  ),
                  Divider(),
                  Expanded(child: CartItemList(cartData: cartData)),
                ],
              ));
  }
}

Ответы (1 шт):

Автор решения: zakiroof

Данный код ничем не помогает. Вам нужно сохранять добавленный товар в какое-нибудь хранилище. На самом деле у вас много вариантов. Например, локальные: shared_preferences (для маленьких данных), SQLite(для больших данных).

Т.е. пользователь нажимает кнопку "Добавить в корзину", вы сохраняете данные и количество товара в хранилище. На странице корзины вы считываете данные из хранилища.

→ Ссылка