首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在角度使用传单时丢失属性的错误

在角度使用传单时丢失属性的错误
EN

Stack Overflow用户
提问于 2021-06-18 23:30:47
回答 1查看 538关注 0票数 1

我正在尝试使用传单和传单路由机。我使用以下命令安装传单和传单路由机,

代码语言:javascript
复制
npm i leaflet
npm i --save-dev @types/leaflet

npm i leaflet-routing-machine
npm i --save-dev @types/leaflet-routing-machine

进口传单并使用它是好的,但当我试图使用传单路由机,它给我错误。

以下是我的代码,

代码语言:javascript
复制
L.Routing.control({
    waypoints: [
      L.latLng(latitude, longitude),
      L.latLng(latitude, longitude),
    ],
    show: false,
    lineOptions: {styles: [{color: randomColor, opacity: 1, weight: 5}],},
    createMarker: function () {
      return null;
    },
    }).addTo(this.map);

我使用webstorm作为IDE,我得到了lineOptionscreateMarker的两个错误。我在普通的JavaScript中有相同的代码,它工作得很好,但是对于角度来说,它给了我这个错误。

对于lineOptions,它是这样写的,当我添加那些缺失的参数时,错误消失了,但是我不想把这些参数放在一起。

TS2739:类型{TS2739:{ color: string;不透明度: number;权重: number;}[];}“类型”中缺少下列属性: extendToWaypoints,missingRouteTolerance

对于createMarker,它说,

TS2345:类型'{路由器: MapBox;路径点: LatLng[];显示: false;createMarker:() => null;}‘的参数不能分配给'RoutingControlOptions’类型的参数。辅助对象文字只能指定已知的属性,并且'createMarker‘不存在于'RoutingControlOptions’类型中。

既然它在JavaScript中工作,它为什么不工作在角度上?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-19 00:07:43

createMarkerRoutingControlOptions上不存在。将其从对象中移除。

但是,有一个plan: Plan成员,它可以将一个PlanOptions传递给包含createMarker的构造函数。

LineOptions必须定义extendToWaypointsmissingRouteTolerance。如果您“不想要”它们,请将它们设置为有意义的值--比如false表示extendToWaypoints0表示missingRouteTolerance

JavaScript实现可能忽略未知,并且在您传递的options对象中对未定义的键值具有正常的默认值。然而,TypeScript的定义更为严格。也有可能,它不是绝对正确的类型。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68042404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档