Flutter参数跨页传递:参数"key"呢?
Flutter parameters transfering across pages: What about the parameter "key"?
我做了两个页面,PersonalPage和InformationPage。我想将一些参数从 PersonalPage 传输到 InformationPage。这是我的代码。
个人页面:
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Information(phoneNumber: phoneNumber, nickName: nickName, realName: realName, key: key)
),
);
信息页:
class Information extends StatelessWidget {
String? phoneNumber;
String? realName;
String? nickName;
Information({required Key key, required this.phoneNumber, required this.realName, required this.nickName})
: super(key: key);
@override
Widget build(BuildContext context) {
// TODO: implement build
//Some codes
}
}
在 PersonalPage 中,包含“builder:”的行有错误:
Undefined name 'key'.
看来我需要赋值key
。但是我不知道我应该把什么东西放到key
。那我应该给key
填什么?或者我可以采取措施避免分配它吗?
非常感谢。
您需要传递Key,因为关键字段设置为必填。
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Information(key: Key('keyName'), phoneNumber: phoneNumber, nickName: nickName, realName: realName, key: key)
),
);
我做了两个页面,PersonalPage和InformationPage。我想将一些参数从 PersonalPage 传输到 InformationPage。这是我的代码。 个人页面:
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Information(phoneNumber: phoneNumber, nickName: nickName, realName: realName, key: key)
),
);
信息页:
class Information extends StatelessWidget {
String? phoneNumber;
String? realName;
String? nickName;
Information({required Key key, required this.phoneNumber, required this.realName, required this.nickName})
: super(key: key);
@override
Widget build(BuildContext context) {
// TODO: implement build
//Some codes
}
}
在 PersonalPage 中,包含“builder:”的行有错误:
Undefined name 'key'.
看来我需要赋值key
。但是我不知道我应该把什么东西放到key
。那我应该给key
填什么?或者我可以采取措施避免分配它吗?
非常感谢。
您需要传递Key,因为关键字段设置为必填。
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Information(key: Key('keyName'), phoneNumber: phoneNumber, nickName: nickName, realName: realName, key: key)
),
);