Flutter 小部件的“const”应该只在有状态小部件中使用吗?

Flutter 小部件的“const”应该只在有状态小部件中使用吗?,flutter,dart,Flutter,Dart,很明显,在StatefulWidget中,如果状态发生更改,则不会重新生成常量文本“…” class _SomeWidgetState extends State<SomeWidget> { @override Widget build(BuildContext context) { return const Text('Some Static Text'); // doesn't rebuild } } 是的,它很有用 构建中的Const构造函数对所有类型的小

很明显,在StatefulWidget中,如果状态发生更改,则不会重新生成常量文本“…”

class _SomeWidgetState extends State<SomeWidget> {
  @override
  Widget build(BuildContext context) {
    return const Text('Some Static Text'); // doesn't rebuild
  }
}
是的,它很有用

构建中的Const构造函数对所有类型的小部件都很有用,包括无状态小部件和其他不太常见的小部件,如InheritedWidget或RenderObjectWidget

请记住,所有小部件都可能带有参数,因此您可能有:

类MyStateless扩展了无状态小部件{ const MyStateless{Key Key,this.count}:superkey:Key; 最终整数计数; @凌驾 小部件构建上下文上下文{ 返回行 儿童:[ 文本“$count”, 常量文本“静态文本”, ], ; } } 在这种情况下,您的无状态小部件可能会使用不同的参数进行重建,如:

mystatelessunt:0; 致:

我的州:42; 在这种情况下,使用常量文本“静态文本”不会导致重建此文本。

是的,它很有用

构建中的Const构造函数对所有类型的小部件都很有用,包括无状态小部件和其他不太常见的小部件,如InheritedWidget或RenderObjectWidget

请记住,所有小部件都可能带有参数,因此您可能有:

类MyStateless扩展了无状态小部件{ const MyStateless{Key Key,this.count}:superkey:Key; 最终整数计数; @凌驾 小部件构建上下文上下文{ 返回行 儿童:[ 文本“$count”, 常量文本“静态文本”, ], ; } } 在这种情况下,您的无状态小部件可能会使用不同的参数进行重建,如:

mystatelessunt:0; 致:

我的州:42; 在这种情况下,使用常量文本“静态文本”不会导致重建此文本。

请阅读请阅读
class ListItem extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return const Text('Some Static Text') // Is `const` useful here?
  }
}