use_ key_ in_ widget_ constructors
Details about the 'use_key_in_widget_constructors' diagnostic produced by the Dart analyzer.
Constructors for public widgets should have a named 'key' parameter.
Description
#
The analyzer produces this diagnostic when a constructor in a
subclass of
Widget that isn't private to its library doesn't
have a parameter named key.
Example
#
The following code produces this diagnostic because the
constructor for the class MyWidget doesn't have a
parameter named key:
import 'package:flutter/material.dart';
class MyWidget extends StatelessWidget {
const MyWidget({required int height});
}
The following code produces this diagnostic because the
default constructor for the class
MyWidget doesn't have a parameter named
key:
import 'package:flutter/material.dart';
class MyWidget extends StatelessWidget {}
Common fixes
#
Add a parameter named key to the constructor,
explicitly declaring the constructor if necessary:
import 'package:flutter/material.dart';
class MyWidget extends StatelessWidget {
const MyWidget({super.key, required int height});
}
除非另有说明,文档之所提及适用于 Dart 3.12.2 版本报告页面问题.