flutter中怎么子组件给父组件传值
时间: 2023-09-08 17:15:12 浏览: 118
在 Flutter 中,子组件向父组件传递值可以通过回调函数来实现。具体步骤如下:
1. 在父组件中定义一个函数,用于接收子组件传递过来的值。例如:
```
void getValue(String value) {
// 处理接收到的值
}
```
2. 在子组件中定义一个回调函数,用于向父组件传递值。例如:
```
class ChildWidget extends StatelessWidget {
final Function(String) onValueChanged;
ChildWidget({this.onValueChanged});
@override
Widget build(BuildContext context) {
return RaisedButton(
onPressed: () {
// 子组件中调用回调函数,传递值给父组件
onValueChanged('传递的值');
},
child: Text('点击传值'),
);
}
}
```
3. 在父组件中使用子组件,并将定义的函数传递给子组件的回调函数参数。例如:
```
class ParentWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return ChildWidget(
onValueChanged: getValue,
);
}
void getValue(String value) {
// 处理接收到的值
}
}
```
这样子组件就可以通过回调函数向父组件传递值了。
阅读全文