In several code examples, the ScrollController
or TextEditingController
s are initialized in initState
of State<T>
.
How about late
keyword initialization or just initialization with declaration?
class MyState extends State<MyWidget>{
late final _scroller = ScrollController();
// or just
final _scroller = ScrollController();
@override
void dispose() {
_scroller.dispose();
super.dispose();
}
}
Is there any differences or problems?
CodePudding user response:
No difference at all. The late
keyword just means that the controllers will be initialized later with a value instead of right away.
As long as before you use the controllers they're initialized (either directly, or later), you're all good.