TrackPoint tp类型: TrackPoint
参数类型'TrackPoint (在...lib\trackPoint.dart中定义TrackPoint )‘不能分配给参数类型'TrackPoint (在...lib\trackpoint.dart中定义TrackPoint )’.dart.dart trackpoint.dart(8,7):TrackPoint在...lib\trackpoint.dart trackPoint.dart(8,7)中定义: TrackPoint在...lib\trackPoint.dart中定义
以下是错误所在:
import 'trackpoint.dart' show TrackPoint;
class TrackingStatus {
// ...
static void _triggerEvent(TrackPoint tp) {
// ...
TrackingStatusChangedEvent.trigger(tp); // <-- error on tp, see above
}造成错误的原因如下:
class TrackingStatusChangedEvent {
static void trigger(TrackPoint tp) { // <-- causes error
// ...
}
static void trigger(tp) { // <-- works but tp should not be dynamic
// ...
}以下是TrackPoint的来源:
class TrackPoint {
static final List<TrackPoint> _trackPoints = [];
void _addTrackPoint() {
_trackPoints.add(this);argument_type_not_assignable对我来说不合理。特别是因为错误消息指向同一个文件中的同一个类,就好像它们是不同的一样。
发布于 2022-12-03 14:43:37
我建议只在库导入中使用前缀。见下文。
import 'trackpoint.dart' as tp;那就这样用吧。
class TrackPoint {
static final List<tp.TrackPoint> _trackPoints = [];
void _addTrackPoint() {
_trackPoints.add(this);发布于 2022-12-03 15:26:56
将类TrackPoint和类TrackingStatus放在同一个文件中解决了这个问题。可能是交叉装载的问题。
无论如何,谢谢你的帮助!
https://stackoverflow.com/questions/74667407
复制相似问题