Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
颤振LiveData以查看sqlite查询结果的更改_Sqlite_Flutter_Android Livedata - Fatal编程技术网

颤振LiveData以查看sqlite查询结果的更改

颤振LiveData以查看sqlite查询结果的更改,sqlite,flutter,android-livedata,Sqlite,Flutter,Android Livedata,我试图显示我的事务表中有多少行记录。在android中,我可以使用livedata来观察数据的变化,而无需像插入或删除后检索行数结果这样的额外步骤。但是在flutter中,我需要执行额外的步骤 我已经尝试使用stream和bloc模式,但额外的步骤仍然需要在add或delete之后调用bloc Future<List<TempPremixDetailWithIp>> getAll() async { var db = await AppDb().databas

我试图显示我的事务表中有多少行记录。在android中,我可以使用livedata来观察数据的变化,而无需像插入或删除后检索行数结果这样的额外步骤。但是在flutter中,我需要执行额外的步骤

我已经尝试使用stream和bloc模式,但额外的步骤仍然需要在add或delete之后调用bloc

  Future<List<TempPremixDetailWithIp>> getAll() async {
    var db = await AppDb().database;
    var res = await db.rawQuery("""
    SELECT 
    temp_premix_detail.*,
    item_packing.sku_code,
    item_packing.sku_name
    FROM temp_premix_detail
    LEFT JOIN item_packing ON temp_premix_detail.item_packing_id = 
  item_packing.id
    ORDER BY temp_premix_detail.id DESC
    """);
    List<TempPremixDetailWithIp> list = res.isNotEmpty
        ? res.map((c) => TempPremixDetailWithIp.fromJson(c)).toList()
        : [];
    return list;
  }


  _loadTempPremixDetailList() async {
    final list = await TempPremixDetailDao().getAll();
    _tempPremixDetailListSubject.add(list);
  }

  deleteTempPremixDetail(int itemPackingId) async {
    await TempPremixDetailDao().deleteById(itemPackingId);
    await _loadTempPremixDetailList();
    await _loadItemPackingList();
  }
Future getAll()异步{
var db=await AppDb().数据库;
var res=await db.rawQuery(“”)
挑选
温度预混料详图。*,
项目包装。sku编码,
项目\包装.库存单位\名称
来自temp_预混料_详图
左连接项目包装在临时预混合详细信息上。项目包装id=
项目编号
按温度预混料详细信息说明订购
""");
List=res.isNotEmpty
?res.map((c)=>TempPremixDetailWithIp.fromJson(c)).toList()
: [];
退货清单;
}
_loadTempPremixDetailList()异步{
最终列表=等待tempDetailDAO().getAll();
_添加(列表);
}
deleteTempDetail(int itemPackingId)异步{
等待tempDetailDAO().deleteById(itemPackingId);
等待_loadTempPremixDetailList();
等待_loadItemPackingList();
}