如何在抽象类中使用@required注解?SubjectVM.dart上没有错误。我希望它是@required automatic
import 'package:flutter/material.dart';
import 'package:todo/models/subject.dart';
abstract class SubjectBase {
void addSubject(Subject value);
void deleteSubject(Subject value);
void deleteSubjectByIndex(int index);
void updateSubject({@required Subject updatedSubject, @required int indexToReplace});
}SubjectVM.dart
class SubjectVM implements SubjectBase {
List<Subject> listOfSubjects = <Subject>[];
@override
void addSubject(Subject value) {
// TODO: implement addSubject
}
@override
void deleteSubject(Subject value) {
// TODO: implement deleteSubject
}
@override
void deleteSubjectByIndex(int index) {
// TODO: implement deleteSubjectByIndex
}
@override
void updateSubject({Subject updatedSubject, int indexToReplace}) {
// TODO: implement updateSubject
}
}SubjectVM没有错误消息。我可以在没有参数的情况下使用,但我不需要它
SubjectVM subjectVM = SubjectVM()
subjectVM.updateSubject();如果我在SubjectVM.updateSubject中添加@required注解,我就可以将它与@required命名参数一起使用。但是它的手册way.Any建议呢?
发布于 2020-05-06 22:14:56
您的@required注释与SubjectBase类相关,而与SubjectVM无关。如果需要使用这些注释,则需要执行SubjectBase方法。这个类是抽象的,没有实现,但您可以使用子类的实现。
试试这个:
SubjectBase subjectVM = SubjectVM();
subjectVM.updateSubject();https://stackoverflow.com/questions/61636837
复制相似问题