跳到主要内容

use_decorated_box

稳定版
修复可用

使用 DecoratedBox

详情

#

应该Container 仅有 Decoration 时使用 DecoratedBox

Container 是比 DecoratedBox 更重的 Widget,而且,DecoratedBox 还有一个 const 构造函数。

错误示例

dart
Widget buildArea() {
  return Container(
    decoration: const BoxDecoration(
      color: Colors.blue,
      borderRadius: BorderRadius.all(
        Radius.circular(5),
      ),
    ),
    child: const Text('...'),
  );
}

正确示例

dart
Widget buildArea() {
  return const DecoratedBox(
    decoration: BoxDecoration(
      color: Colors.blue,
      borderRadius: BorderRadius.all(
        Radius.circular(5),
      ),
    ),
    child: Text('...'),
  );
}

启用

#

要启用 use_decorated_box 规则,请在您的 analysis_options.yaml 文件中的 linter > rules 下添加 use_decorated_box

analysis_options.yaml
yaml
linter:
  rules:
    - use_decorated_box

如果您改为使用 YAML 映射语法来配置 linter 规则,请在 linter > rules 下添加 use_decorated_box: true

analysis_options.yaml
yaml
linter:
  rules:
    use_decorated_box: true