【发布时间】:2021-05-21 19:02:33
【问题描述】:
我在一个类中有一个名为 images 的字段:
final images = ["amusement1.jpeg", "amusement2.jpg", "amusement3.png", "amusement4.jpeg",
"amusement5.jpeg", "amusement6.jpeg"];
我想设置另一个字段的默认值:
var displayImage = images[0];
但这给出了错误:
lib/main.dart:46:22: Error: Can't access 'this' in a field initializer to read 'images'.
var displayImage = images[0];
^^^^^^
Performing hot restart... 40ms
如何在 Dart 中初始化一个字段的值?
【问题讨论】:
-
您可能在声明
displayImage之前声明了类似List<...> images = ...;的内容,并且您是在类字段级别(而不是在函数内)执行此操作。您不能这样做,因为images[0]隐式转换为this.images[0],而this在构造函数返回之前不存在。