dart_required - ShenYj/ShenYj.github.io GitHub Wiki
最开始 @required 是注解
现在它已经作为内置修饰符
主要用于允许根据需要标记任何命名参数(函数或类),使得他们不为空。因为可选参数中必须有个 required
/// value 必须传入参数
void testFunc(required String value) {
}
class Person {
String name;
int age;
/// 名字和年龄都是必传的参数
Person({required this.name, required this.age});
}
void main(args) {
Person p = new Person({
name: '张三',
age: 20
});
}
class Person {
String? name;
int age;
/// 年龄必传
/// 名字可以不传入
Person({this.name, required this.age});
}
void main(args) {
Person p1 = new Person({
name: '张三',
age: 20
});
Person p2 = new Person({
age: 20
});
}