Flutter Firebase报错:实例成员addMultipleCollection无法静态访问
解决Firebase中“Instance member 'addMultipleCollection' can't be accessed using static access”错误
这个错误的本质是调用方法的方式错了——addMultipleCollection是类里的实例方法,但你用了调用静态方法的方式(直接用类名调用),所以才会触发报错。
给你两种可行的解决思路:
思路一:用类实例调用方法(推荐,符合类的封装逻辑)
- 先创建对应类的实例,假设你的类是
FirebaseFirestoreService,代码如下:final firestoreService = FirebaseFirestoreService(); - 替换原来的调用代码,通过实例来调用方法:
firestoreService.addMultipleCollection(...)
思路二:把方法改成静态方法(适用于不需要依赖类实例状态的场景)
如果这个方法不需要用到类里的实例变量,可以直接把它定义为静态方法,在方法前加上static关键字:
static Future<void> addMultipleCollection(String collectionPath, Map<String, dynamic> data) async { // 原来的方法逻辑代码 }
修改完成后,你原来用类名直接调用的写法就能正常运行了。
内容的提问来源于stack exchange,提问作者hatahata
相关产品推荐
相关产品推荐

