我可以让 Android Studio 生成带有命名参数并添加密钥的 Dart 构造函数代码吗?

run*_*007 5 dart android-studio flutter

当我自动生成 dart 构造函数时,我希望生成器使用命名参数来创建我的构造函数并添加键。

(大括号包裹构造函数参数)

我可以执行一些简单的技巧让 Android Studio 为我执行此操作吗?

// Auto generated constructor without named parameters. 
// This is how Android studio currently generates my Widget constructors.
class MyTestModel {
  MyTestModel(this.a, this.b, this.c);

  final String a;
  final String b;
  final String c;
}

// Constructor with named parameters and key.
// This is how I would like Android Studio Auto Generate to behave.
class MyTestModelB {
  MyTestModelB({Key key, this.a, this.b, this.c}) : super(key: key);

  final String a;
  final String b;
  final String c;
}
Run Code Online (Sandbox Code Playgroud)

所以用另一种方式来表达我的问题:

当我按“Command + N”时,我使用 Android Studio 自动生成 Dart 构造函数。

目前 Android Studio 不会为我生成命名参数构造函数,也不会为构造函数添加键。

我猜想 Android Studio 使用某种模板来自动生成这些构造函数。我想我需要访问该模板并修改它以使其自动生成命名参数构造函数,并添加密钥。但它在哪里呢?

我安装的 Flutter/Dart/Android studio 相当新。从 2020 年 4 月/5 月开始。

run*_*007 -1

好吧,我不知道我的 Android Studio 发生了什么,但现在我可以像想要的那样生成构造函数。一定是发生了什么事情!也许安装或更新了某些东西?我不知道。如果您知道 Android Studio 中自动生成 Flutter 构造函数的具体设置在哪里,我很想知道。这就是我的构造函数现在的样子:

class Avatar extends StatelessWidget {
  final String photoUrl;
  final VoidCallback onPressed;
  const Avatar({Key key, this.photoUrl, this.onPressed}) : super(key: key);
}
Run Code Online (Sandbox Code Playgroud)