首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >传单GeoJSON类型不与GeoJSON对象关联

传单GeoJSON类型不与GeoJSON对象关联
EN

Stack Overflow用户
提问于 2020-10-13 17:28:43
回答 2查看 304关注 0票数 1

我已经广泛使用传单0.7,但正在尝试1.7为一个新的项目,第一次。我试图扩展GeoJSON层类以使用默认的pointToLayer方法,这些方法似乎失败了,因为GeoJSON的类型定义没有与对象关联.我想做的是:

代码语言:javascript
运行
复制
import { GeoJSON } from 'leaflet';

const geojsonMarkerOptions = {
    ...
};

export const Layer = GeoJSON.extend({
  initialize: function() {

    GeoJSON.prototype.initialize.call(this, [], {
      pointToLayer: (feature, latlng) => this.pointToLayer(feature, latlng)
    });
  },

  pointToLayer: function(feature, latlng) {
    ...
  }
}

编译器抱怨:

属性‘初始化’在'GeoJSON‘类型上不存在

因此,不知怎么的,GeoJSON类型与GeoJSON对象没有关联,这是我对此的解释.你的是什么?我使用的是传单1.7.1、@type/传单1.5.19和打字本4.0.3。我已经更新为角10,删除和重新安装传单和它的@type包,我也尝试清除我的节点模块并重新安装它们。有人知道我做错了什么,对吧??

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-13 18:16:30

虽然传单JS代码确实在其类上有一个initialize方法,而且这个方法在文档示例中提到过,但是它并没有在API中得到明确的描述,因此它可能没有包含在类型中.

您可以添加它,或者最好向@types/leaflet包/repo发送一个拉请求,或者简单地忽略使用initialize方法的行上方的// @ts-ignore注释指令的TypeScript编译器错误。

票数 2
EN

Stack Overflow用户

发布于 2020-10-13 17:38:31

你不想做这样的事吗?

代码语言:javascript
运行
复制
export class Layer extends GeoJSON {
   initialize() {
      super.initialize()
   }
}

不过,我承认不知道传单。但这将是我的第一次猜测。

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

https://stackoverflow.com/questions/64340193

复制
相关文章

相似问题

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