微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

飞镖 – 在Widget或State上保留最终字段?

应该在哪里保留最终价值?

在StatefulWidget(我的子类当然)实例中,通过widget.thatFinalField从State(子类)访问它,或者

在国家本身.我已经看到了这两种方法..每种方法都有利弊吗?

解决方法

您应该在StatefulWidget上存储最终成员字段(通过构造函数参数传递)并将它们公开.

StatefulWidget的关联状态应该只使用认构造函数(无参数),其成员字段应该是私有的(以_开头)和mutable.如果需要昂贵或异步工作,请在内联或initState初始化它们.

这种模式允许在父父调用setState时使用新的构造函数参数重新创建/重建StatefulWidget,同时重新使用前一个State并让它保存存储在其可变成员字段中的值.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐