initState不需要用setState吧, 直接给属性赋值就可以吧.

来源:13-2 基于TextField实现顶部SearchBar-1【封装组件出神入化】

cyper

2019-04-06

写回答

1回答

CrazyCodeBoy

2019-04-07

是的,如果在initState中同步赋值可以不需要setState:

@override
void initState() {
  if (widget.defaultText != null) {
    setState(() {
      _controller.text = widget.defaultText;
    });
  }
  super.initState();
}
//可改为
@override
void initState() {
  if (widget.defaultText != null) {
    _controller.text = widget.defaultText;
  }
  super.initState();
}

能够举一反三,老师为你点赞


1
0

Flutter从入门到进阶 实战携程网App 一网打尽核心技术

解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。

4788 学习 · 3270 问题

查看课程