You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用dart fix命令将super(key:key)转为super.key以消除警告?

Dart "将key转换为超类参数"警告的自动修复方案

问题场景

收到"将key转换为超类参数"的警告,现有代码示例:

class FooPage extends StatefulWidget {
  const FooPage(Key? key) : super(key: key);

  @override
  State<FooPage> createState() => _FooPageState();
}

需要将所有super(key: key)调用批量转换为super.key,目标转换效果:

转换前

const FooPage({Key? key}) : super(key: key);

转换后

const FooPage({super.key});

解决方案

存在对应的dart fix命令,直接执行以下命令即可完成批量修复:

dart fix --apply super_parameters

该修复规则会自动识别构造函数中传递给超类的key参数,将其替换为Dart 2.17及以上版本支持的超类参数简写语法super.key,同时自动适配参数的命名形式、可空性等细节,保证代码语义完全一致。

注意:使用前需确认你的Dart SDK版本不低于2.17,否则该语法特性无法被支持。


内容的提问来源于stack exchange,提问作者iDecode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 22:45:37