dart Analyzer在Visual Studio Code中无法正常工作...或者是吗?

q3aa0525  于 2023-04-27  发布在  其他
关注(0)|答案(1)|浏览(134)

在Visual Studio Code中,当调用Dart函数时忽略@required参数时似乎不会出现错误。我必须做些什么才能让分析器工作吗?或者错误被标记了,我只是看不到它们?任何帮助都将不胜感激...

import 'package:meta/meta.dart';

void sayHello({@required String to, bool inEnglish}){

  if(inEnglish == null || inEnglish){
    print("Hello, $to");
  } else {
    print("Bonjour, $to");
  }
}

main(){
 sayHello(inEnglish: true); // output: Hello, null, no complaints about **to** missing
}
qxgroojn

qxgroojn1#

更新

从Dart 2.12开始,required关键字取代了@requiredmeta注解。有关详细信息,请查看official FAQ

原始答案

Dart语言有必选的位置参数、可选的位置参数和可选的命名参数。遗憾的是,Dart不支持必选的命名参数。
@required注解实际上没有做任何事情。它只是Flutter添加的一个解决方案,当你没有传递一个标记有它的参数时,分析器可以使用它来添加一个警告。但它不会阻止你省略“required”参数,这样做的代码仍然可以很好地编译和运行。

相关问题