Flutter中didChangeDependencies不触发且编译器报错如何解决?
问题解决方法
核心原因
问题的根源是方法名拼写错误:
- 你自定义的方法名为
didChaneDependencies,比FlutterState类提供的生命周期方法少了一个字母g - 正确的生命周期方法名为
didChangeDependencies
拼写错误导致你实际上没有重写父类的生命周期方法,就算移除@override注解,你定义的也只是一个普通自定义方法,Flutter框架不会自动调用,自然不会触发打印逻辑。
修复代码
将你现有的方法定义替换为如下代码即可:
@override void didChangeDependencies() { print('didChangeDependencies'); super.didChangeDependencies(); }
修改完成后编译器报错会自动消失,方法也会按照生命周期规则正常触发。
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

