Flutter父子组件通信

父->子

定义父组件变量 data,在子组件Child的构造方法中把data值传进去,子组件接收data。

父->子

子组件接收callBack并调用callBack将data值传过去。
父组件定义onChanged,绑定到callBack中,接收子组件传过来的data值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class ParentState extends State<Parent> {
String data = "父组件传递给子组件的值";

void onChanged(val){
setState(() {
data = val;
});
}

@override
Widget build(BuildContext context) {
......
//省略非关键代码
new Child(data: data,callBack: (value)=>onChanged(value)),
}
}
class child extends StatefulWidget {
childTwo({Key key, this.data, this.callBack}) : super(key: key);
final callBack;
String data;

@override
void initState() {
data = widget.data;
super.initState();
}
......
//省略非关键代码
widget.callBack(data);
}
坚持原创技术分享,您的支持将鼓励我继续创作!