我正在尝试获取1-7的整数值,并用枚举为每个值打印一天。
我从Firestore收到类映射错误,“不是封闭类中的字段”
因此,如果传入1,则给出“星期一” 如果传入2,则给出“星期二”
enum _Days {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
class HeadingItem implements ListItem {
String _weekday;
final int time;
final DocumentReference reference;
set day(int weekday) {
var value = _Days.values[weekday - 1].toString();
var idx = value.indexOf(".") + 1;
var result = value.substring(idx, value.length);
_weekday = result;
}
String get day {
return _weekday;
}
HeadingItem.fromMap(Map<String, dynamic> map, {this.reference})
: assert(map['day'] != null),
assert(map['time'] != null),
day = map['day'], // 'day' isn't a field in the enclosing class <--- this is the error that im stuck on...
time = map['time'];
HeadingItem.fromSnapshot(DocumentSnapshot snapshot) : this.fromMap(snapshot.data, reference: snapshot.reference);
}
答案 0 :(得分:0)
请注意,在您的代码中,text1 = driver.find_element_by_xpath("//a[contains(., 'Text 1')]")
text2 = driver.find_element_by_xpath("//a[contains(., 'Text 1')]/parent::h1/following-sibling::p/a[contains(., 'Text 2')]")
从技术上讲是day
的一组方法,可让我们像使用<{1} / em>它是this
的成员; day
实际上不是成员。
因此,为了使初始化程序列表按预期工作,它已经需要访问this
才能提供所需的功能(例如,设置内部成员day
)。
但是,如初始化器列表中的Language Tour of Dart中所述,初始化器列表无权访问this
。相反,我们应该将初始化程序列表视为在实例化期间分配给_weekday
成员的值。
答案 1 :(得分:0)
更改
owner: self
对此
String get day {
return _weekday;
}