跳到主要内容

use_key_in_widget_constructors

公共 Widget 的构造函数应具有一个名为“key”的参数。

描述

#

Widget 的非库私有子类的构造函数不具有名为 key 的参数时,分析器会产生此诊断。

示例

#

以下代码产生此诊断,因为类 MyWidget 的构造函数不具有名为 key 的参数

dart
import 'package:flutter/material.dart';

class MyWidget extends StatelessWidget {
  MyWidget({required int height});
}

以下代码产生此诊断,因为类 MyWidget 的默认构造函数不具有名为 key 的参数

dart
import 'package:flutter/material.dart';

class MyWidget extends StatelessWidget {}

常见修复

#

为构造函数添加一个名为 key 的参数,必要时显式声明构造函数

dart
import 'package:flutter/material.dart';

class MyWidget extends StatelessWidget {
  MyWidget({super.key, required int height});
}