"一个state它可能给多个widget使用"
来源:10-6 Json 数据解析

demonCry
2022-09-08
13:20 秒 老师说 一个state它可能给多个widget使用, 故最好不要像下面这样给 _controller 赋值
而应该放在initState里
我的问题是 放在外面的话, VideoController _controller = videoController()
这个赋值应该是发生在类实例化的时候吧
也就是说每次实例化(new 新的)都是创建一个新的 videoController啊
还是老师意思是说 始终只会存在同一个相同的 state 实例
那这样的话即使放在 initState 里, initState不也是只会调用一次吗
写回答
1回答
-
马超老师
2022-11-19
这个地方可能造成了一点歧义。
initState确实在一个生命周期中只会调用一次,这里强调的是有时候在声明的时候赋值,可能会导致有些状态获取不到。所以放在initState里会更保险一点,不过绝大多数场景二者没什么差别。
00
相似问题