class HomeCubit extends Cubit<HomeState> {
HomeCubit() : super(HomeInitial());
var savedBox = Boxes.savedBox;
addSavedProduct(ProductModel product) {
savedBox.add(product);
print(savedBox.length);
emit(HomeSuccess());
}
removeSavedProduct(ProductModel product) {
try {
if (product.id != null) {
savedBox.delete(product.id!);
emit(HomeSuccess());
} else {
print("Invalid product id");
}
} catch (e) {
print("Error removing product: $e");
}
}
}
我可以将项目添加到配置单元框中,但无法删除它们。没有错误。我尝试通过Id删除它们,但它们就是不删除。
使用 add 添加到 hive 框中的值是随机键,您应该使用
put
添加数据以换取 ID。
class HomeCubit extends Cubit<HomeState> {
HomeCubit() : super(HomeInitial());
var savedBox = Boxes.savedBox;
addSavedProduct(ProductModel product) {
if (product.id == null) {
savedBox.put(product.id!, product);
}
print(savedBox.length);
emit(HomeSuccess());
}
removeSavedProduct(ProductModel product) {
try {
if (product.id != null) {
savedBox.delete(product.id!);
emit(HomeSuccess());
} else {
print('Invalid product id');
}
} catch (e) {
print('Error removing product: $e');
}
}
}