Leaflet 如何与ngx传单一起使用geoman io

Leaflet 如何与ngx传单一起使用geoman io,leaflet,ngx-leaflet,leaflet-geoman,Leaflet,Ngx Leaflet,Leaflet Geoman,我试图在ngx传单应用程序中使用geoman io插件()。我发现了这篇文章:,但这篇文章提供的唯一对我有效的解决方案是使用括号表示法,如下所示: map[“pm”][“addControls”]({position:'topleft'}) 我想这不是最好的办法。所以我的问题是如何在ngx传单中正确使用geoman io 当我完全尝试这些步骤时,它不起作用,因为在map.pm.addControls({…})我得到了错误 类型“Map”上不存在属性“pm” 步骤: npm i@geoman io

我试图在ngx传单应用程序中使用geoman io插件()。我发现了这篇文章:,但这篇文章提供的唯一对我有效的解决方案是使用括号表示法,如下所示:

map[“pm”][“addControls”]({position:'topleft'})

我想这不是最好的办法。所以我的问题是如何在ngx传单中正确使用geoman io

当我完全尝试这些步骤时,它不起作用,因为在
map.pm.addControls({…})
我得到了错误

类型“Map”上不存在属性“pm”

步骤:

  • npm i@geoman io/geoman免费传单
  • 在组件中导入geoman
    Import'@geoman io/传单geoman free'
  • 在“构建”部分的angular.json中,导入geoman样式:
  • 我的组成部分:
  • My package.json文件:

     "dependencies": {
        "@angular/animations": "~10.2.0",
        "@angular/cdk": "^10.2.7",
        "@angular/common": "~10.2.0",
        "@angular/compiler": "~10.2.0",
        "@angular/core": "~10.2.0",
        "@angular/flex-layout": "^10.0.0-beta.32",
        "@angular/forms": "~10.2.0",
        "@angular/material": "^10.2.7",
        "@angular/platform-browser": "~10.2.0",
        "@angular/platform-browser-dynamic": "~10.2.0",
        "@angular/router": "~10.2.0",
        "@asymmetrik/ngx-leaflet": "^8.1.0",
        "@fortawesome/angular-fontawesome": "^0.7.0",
        "@geoman-io/leaflet-geoman-free": "^2.7.0",
        "@types/leaflet": "^1.5.19",
        "@types/leaflet-rotatedmarker": "^0.2.1",
        "leaflet": "^1.7.1",
        "leaflet-rotatedmarker": "^0.2.0",
        "rxjs": "~6.6.0",
        "tslib": "^2.0.0",
        "zone.js": "~0.10.2"
      },
      "devDependencies": {
        "@angular-devkit/build-angular": "~0.1002.0",
        "@angular/cli": "~10.2.0",
        "@angular/compiler-cli": "~10.2.0",
        "@types/node": "^12.11.1",
        "@types/jasmine": "~3.5.0",
        "@types/jasminewd2": "~2.0.3",
        "codelyzer": "^6.0.0",
        "jasmine-core": "~3.6.0",
        "jasmine-spec-reporter": "~5.0.0",
        "karma": "~5.0.0",
        "karma-chrome-launcher": "~3.1.0",
        "karma-coverage-istanbul-reporter": "~3.0.2",
        "karma-jasmine": "~4.0.0",
        "karma-jasmine-html-reporter": "^1.5.0",
        "protractor": "~7.0.0",
        "ts-node": "~8.3.0",
        "tslint": "~6.1.0",
        "typescript": "~4.0.2"
      }
    

    如果我将onMapReady函数更改为
    onMapReady(map:L.map)
    ,它将抛出相同的错误。谢谢你的帮助

    对我来说,它适用于任何脏类型:

     onMapReady(map: any)
    

    谢谢这可能不是“最干净”的方法,但它可以工作。Typescript支持将在未来几天提供,可能:
     "dependencies": {
        "@angular/animations": "~10.2.0",
        "@angular/cdk": "^10.2.7",
        "@angular/common": "~10.2.0",
        "@angular/compiler": "~10.2.0",
        "@angular/core": "~10.2.0",
        "@angular/flex-layout": "^10.0.0-beta.32",
        "@angular/forms": "~10.2.0",
        "@angular/material": "^10.2.7",
        "@angular/platform-browser": "~10.2.0",
        "@angular/platform-browser-dynamic": "~10.2.0",
        "@angular/router": "~10.2.0",
        "@asymmetrik/ngx-leaflet": "^8.1.0",
        "@fortawesome/angular-fontawesome": "^0.7.0",
        "@geoman-io/leaflet-geoman-free": "^2.7.0",
        "@types/leaflet": "^1.5.19",
        "@types/leaflet-rotatedmarker": "^0.2.1",
        "leaflet": "^1.7.1",
        "leaflet-rotatedmarker": "^0.2.0",
        "rxjs": "~6.6.0",
        "tslib": "^2.0.0",
        "zone.js": "~0.10.2"
      },
      "devDependencies": {
        "@angular-devkit/build-angular": "~0.1002.0",
        "@angular/cli": "~10.2.0",
        "@angular/compiler-cli": "~10.2.0",
        "@types/node": "^12.11.1",
        "@types/jasmine": "~3.5.0",
        "@types/jasminewd2": "~2.0.3",
        "codelyzer": "^6.0.0",
        "jasmine-core": "~3.6.0",
        "jasmine-spec-reporter": "~5.0.0",
        "karma": "~5.0.0",
        "karma-chrome-launcher": "~3.1.0",
        "karma-coverage-istanbul-reporter": "~3.0.2",
        "karma-jasmine": "~4.0.0",
        "karma-jasmine-html-reporter": "^1.5.0",
        "protractor": "~7.0.0",
        "ts-node": "~8.3.0",
        "tslint": "~6.1.0",
        "typescript": "~4.0.2"
      }
    
     onMapReady(map: any)