我似乎无法从flutter / dart中的其他类访问全局变量 _firestore 和 loggedInUser 。根据我在文档中和在线阅读的内容,这应该可行吗?
创建全局变量:
import 'package:cloud_firestore/cloud_firestore.dart';
final _firestore = Firestore.instance;
FirebaseUser loggedInUser;
class TheSlateScreen extends StatefulWidget {
尝试在此处访问它们:
import 'package:theslate/screens/theslate_screen.dart';
class SlateTasks extends ChangeNotifier {
void addTask(String newTaskTitle) {
_firestore.collection('Test').add({
'Task': newTaskTitle,
'User': loggedInUser.email,
});
答案 0 :(得分:3)
变量名前的下划线_
表示该变量是私有的。
全局变量应为公共变量,另一方面,公共变量应以_
开始
通过将“ final _firestore = Firestore.instance”更改为“ final firestore = Firestore.instance”,您应该能够全局访问变量。
使私有变量在全局级别上被访问的另一种方法是添加如下的getter: Firestore get firestore => _firestore;