Flutter 在flatter中的小部件之间保存数据

Flutter 在flatter中的小部件之间保存数据,flutter,Flutter,您好,我正在为餐厅制作一个应用程序,但我需要一些帮助我有一个列表,我想将这些值保存在内存或firebase中任何我想选择哪些主题的位置,我应该如何做 基本上,我的意思是我想从用户那里获得精选数据,我想添加it订单页面。如果您有任何建议,请让我知道,谢谢 导入“包装:颤振/材料.省道”; 导入“包:resat/BurgerListView/data/toppics_model.dart”; 导入“数据/toppics.dart”; 类装饰扩展了StatefulWidget{ @凌驾 MyAppS

您好,我正在为餐厅制作一个应用程序,但我需要一些帮助我有一个列表,我想将这些值保存在内存或firebase中任何我想选择哪些主题的位置,我应该如何做 基本上,我的意思是我想从用户那里获得精选数据,我想添加it订单页面。如果您有任何建议,请让我知道,谢谢

导入“包装:颤振/材料.省道”;
导入“包:resat/BurgerListView/data/toppics_model.dart”;
导入“数据/toppics.dart”;
类装饰扩展了StatefulWidget{
@凌驾
MyAppState createState(){
返回新的MyAppState();
}
}
类MyAppState扩展了状态{
列表番茄酱=[
“不”,
“轻”,
“常规”,
“额外”,
];
列出卡路里=['0卡'、'1卡'、'2卡'、'3卡'];
var i=2;
最终列表_主题=类别;
@凌驾
小部件构建(构建上下文){
//TODO:实现构建
返回容器(
margin:EdgeInsets.all(6),//其他ListTile之间的空格
装饰:盒子装饰(
边框:边框。全部(颜色:颜色。灰色),
borderRadius:borderRadius.all(半径.圆形(8)),
孩子:ListTile(
标题:世界其他地区(儿童:[
扩大(
儿童:
Text(“番茄酱\n”+卡路里[i],textAlign:textAlign.center,),),
扩大(
孩子:(墨水井)(
子项:文本(“-”,textAlign:textAlign.center),
onTap:(){
设置状态(){
如果(i)2{
i=i;
}否则
i++;
印刷品(一);
});
},
)),
),
]),
前导:图标(图标。饼图))
);
}
}

我可以向您推荐两种在不同用户之间保存数据的方法

毫不奇怪,它是一个通过firebase或vis托管在服务器上的您自己的Web服务API的在线数据库

我不建议您使用离线数据库(SQLite),因为它将仅限于一个用户

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

所以,试着从中学习颤振的概念

-您可以使用此选项在设备上本地保存值。
   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))
);
  }
 }