flutter - 在 Flutter 中的 widget 之间保存数据

标签 flutter

嗨,我正在为餐厅制作一个应用程序,但我需要一些帮助,我有一个 listtilel,我想将这些值保存在内存或 firebase 中的任何地方,我想获取选择的主题,我应该如何做 基本上我的意思是我想从用户那里获取选择的数据,我想添加它的订单页面如果您有任何建议请告诉我谢谢

this is screen of food details

   import 'package:flutter/material.dart';
  import 'package:resat/BurgerListView/data/toppics_model.dart';
  import 'data/toppics.dart';

 class decor extends StatefulWidget {
  @override
  MyAppState createState() {
  return new MyAppState();
   }
   }


 class MyAppState extends State<decor> {

 List ketchup = [
'No',
'light',
'regular',
'extra',
   ];
       List calori = ['0 Cal', '1 Cal', '2 Cal', '3 Cal'];
       var i = 2;


    final List<topics> _topics = categories;

    @override
   Widget build(BuildContext context) {
// TODO: implement build

return Container(

    margin: EdgeInsets.all(6), //space between other listtiles
    decoration: BoxDecoration(

        border: Border.all(color: Colors.grey),
        borderRadius: BorderRadius.all(Radius.circular(8))),

    child: ListTile(

        title: Row(children: [
          Expanded(
              child:
              Text("Ketchup\n" + calori[i], textAlign: TextAlign.center,),),
          Expanded(
            child: (InkWell(
              child: Text("-", textAlign: TextAlign.center),
              onTap: () {
                setState(() {
                  if (i <= 0){
                    i = i;
                  }else
                    i--;
                  print(i);
                });
              },
            )),
          ),
          Expanded(child: Text(ketchup[i], textAlign: TextAlign.center)),
          Expanded(
            child: (InkWell(
              child: Text("+", textAlign: TextAlign.center),
              onTap: () {
                setState(() {
                  if (i > 2) {
                    i = i;
                  } else
                    i++;
                  print(i);
                });
              },
            )),
          ),

        ]),

        leading: Icon(Icons.pie_chart))
);
  }
 }

最佳答案

我可以建议您两种在不同用户之间保存数据的方法。

毫不奇怪,它是一个在线数据库,可以通过 Firebase 或通过您自己的服务器上托管的 Web 服务 API 实现。

无论如何,我不建议您使用离线数据库(SQLite),因为它将仅限于单个用户。

您保存和获取的数据将仅限于单个用户。

因此,尝试从中学习 flutter 概念,

Firebase database

Web api implementation

Offline datbase

关于flutter - 在 Flutter 中的 widget 之间保存数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59588348/

相关文章:

flutter - 如何使用ble manager关闭蓝牙?

json - Flutter List 不是 'Iterable<dynamic>' 类型的子类型

firebase - Flutter firebase_admob 无法在 iOS 产品中加载广告

Flutter Web 集成测试 CORS XMLHttpRequest 错误

Flutter:BottomNavigationBar在选项卡更改时重建页面

android - flutter WebViewController如何添加标题

Flutter Web - 从自定义画图保存图像 .png

flutter - setState() 在更新 UI 方面是否有任何限制

Flutter Hooks Riverpod 不更新小部件,尽管提供程序已刷新

dart - Flutter:将Observable1.mergeWith([observable2])喂入后,Stream Builder无法正常工作