我知道这是一个经常出现的问题,可以通过修复导入语句来解决。我目前有
import { LeafletModule } from 'node_modules/@asymmetrik/ngx-leaflet';
import * as L from 'leaflet';
import { } from '@types/leaflet';
我正在引用选项,因此:
options = {
layers: [
this.googleHybrid
],
zoom: 1.49,
zoomSnap: 0,
center: L.latLng([180, -180])}
我觉得我遇到了这个问题,因为将传单中的所有内容都导入为 L。有什么想法吗?
编辑:我还应该补充一点,这只是在测试中出现。
最佳答案
当 Angular.io 没有将 LeafletModule 正确加载到您的应用程序时,就会发生这种情况。通常,您会执行以下操作:
首先,将 LeafletModule
导入您的应用程序模块:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { LeafletModule } from '@asymmetrik/ngx-leaflet';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
LeafletModule.forRoot()
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
然后,如果您在应用程序模块的子模块中使用 ngx-leaflet,则还需要将其导入到该子模块中:
import { NgModule } from '@angular/core';
import { LeafletModule } from '@asymmetrik/ngx-leaflet';
@NgModule({
declarations: [
],
imports: [
LeafletModule
],
providers: []
})
export class MyModule { }
有 a tutorial 解决了如何使用 Angular CLI 启动和运行,但它没有解决使用 ngx-leaflet 的应用程序模块的子模块的情况。
其他一些注意事项:
LeafletModule
导入也是如此。如果需要,大多数构建管道将自动获取类型信息。 @types/leaflet
是完全有效的 你也可以根据需要导入特定的项目,例如 import * as L from 'leaflet';
关于typescript - 无法绑定(bind)到 'leafletOptions',因为它不是 'div' 的已知属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49927900/