命名参数 'userId' 未定义
The named parameter 'userId' isn't defined
我正在尝试在用户 auth == true 时再次呼叫他。当用户按下时,他需要被称为同一个用户。有什么解决办法吗?
class upload extends StatefulWidget {
String? userId;
upload({Key? key, this.userId}) : super(key: key);
@override
State<upload> createState() => _uploadState();
}
class _uploadState extends State<upload> {
File? file;
String? downloadUrl;
//.......
//.......
//.......
@override
void initState() {
super.initState();
FirebaseFirestore.instance
.collection("users")
.doc(user!.uid)
.get()
.then((value) {
this.loggedInUser = usermodel.fromMap(value.data());
setState(() {});
});
}
//...........
//...........
onPressed: () => selectImage(context, userId: loggedInUser.uid),
~~~!
在您的 selectImage
函数中,如果您这样定义它:
selectImage(BuildContext context, String userId) {
//....etc
那么当你调用这个方法时,它应该是这样的:
onPressed: () => selectImage(context, loggedInUser.uid),
因为您使用的是位置参数,而不是命名参数。
如果要使用命名,将其更改为:
selectImage({required BuildContext context, required String userId}) {
//....etc
onPressed: () => selectImage(context: context, userId: loggedInUser.uid),
我正在尝试在用户 auth == true 时再次呼叫他。当用户按下时,他需要被称为同一个用户。有什么解决办法吗?
class upload extends StatefulWidget {
String? userId;
upload({Key? key, this.userId}) : super(key: key);
@override
State<upload> createState() => _uploadState();
}
class _uploadState extends State<upload> {
File? file;
String? downloadUrl;
//.......
//.......
//.......
@override
void initState() {
super.initState();
FirebaseFirestore.instance
.collection("users")
.doc(user!.uid)
.get()
.then((value) {
this.loggedInUser = usermodel.fromMap(value.data());
setState(() {});
});
}
//...........
//...........
onPressed: () => selectImage(context, userId: loggedInUser.uid),
~~~!
在您的 selectImage
函数中,如果您这样定义它:
selectImage(BuildContext context, String userId) {
//....etc
那么当你调用这个方法时,它应该是这样的:
onPressed: () => selectImage(context, loggedInUser.uid),
因为您使用的是位置参数,而不是命名参数。
如果要使用命名,将其更改为:
selectImage({required BuildContext context, required String userId}) {
//....etc
onPressed: () => selectImage(context: context, userId: loggedInUser.uid),