颤振蜂巢盒不可听

Posted

技术标签:

【中文标题】颤振蜂巢盒不可听【英文标题】:Flutter hive box not Listenable 【发布时间】:2021-04-09 17:37:29 【问题描述】:

作为 ValueListenableBuilder 的一部分,它为在向数据库中添加新条目时需要更新的 Listview 设置。我是 Flutter 的新手,但我发现的每个教程都说这应该有效,但它说“方法 'listenable' 没有为类型 'Box' 定义。”任何关于我哪里出错的帮助或想法都是巨大的帮助。

(只有一小段代码,整个小部件很大)

import 'package:flutter/material.dart';
import 'package:hive_flutter/hive_flutter.dart';
import 'package:hive/hive.dart';

Widget foodbar(context) => ValueListenableBuilder(
    valueListenable: Hive.box<dynamic>('food').listenable(),
    builder: (
      context,
      foodbox,
      _,
    ) 
      return ListView.builder(
          itemCount: foodbox.length,
          itemBuilder: (BuildContext context, int index) 
            final food = foodbox.getAt(index) as FoodMod;
            return; 

(pubspec.yaml)

  flutter:
    sdk: flutter
  hive: 1.4.1+1
  hive_flutter: ^0.3.0+2
  path_provider: ^1.3.0
  cupertino_icons: ^0.1.2

dev_dependencies:
  flutter_test:
    sdk: flutter
  hive_generator: ^0.8.2
  build_runner: 

【问题讨论】:

【参考方案1】:

你需要导入

import 'package:hive_flutter/hive_flutter.dart';

source

【讨论】:

以上是关于颤振蜂巢盒不可听的主要内容,如果未能解决你的问题,请参考以下文章

在颤动中打开具有不同适配器的蜂巢盒

Flutter - 如何在蜂巢中添加和检索数据?

颤振“参数类型不可分配”两种相同类型的错误

颤振错误->必须初始化不可为空的“项目”

颤振:不支持的操作:无法添加到不可修改的列表

颤振打开 Hive 框会给出错误 - 说找不到框,您是不是忘记调用 Hive openbox()