以角度为 GoogleApi 命名空间创建别名

问题描述

我正在使用 agm 并尝试使用 namespaces aliases in typescript 为 googleapi 创建命名快捷方式:

//general
export import GoogleMap = google.maps.Map;

export import GoogleStyleOptions = google.maps.Data.StyleOptions;
//map
export import GoogleStyledMapType = google.maps.StyledMapType;
//drawing:
export import GoogleDrawingManager = google.maps.drawing.DrawingManager;
export import GoogleOverlayCompleteEvent = google.maps.drawing.OverlayCompleteEvent;
export import GoogleOverlayType = google.maps.drawing.OverlayType;
export import GoogleCircle = google.maps.Circle;
export import GoogleFeature = google.maps.Data.Feature;
//events:
export import GoogleMouseEvent = google.maps.MouseEvent;
export import GoogleDataMouseEvent = google.maps.Data.MouseEvent;
//places:
export import GoogleAutoComplete = google.maps.places.Autocomplete;
export import GooglePlaceResult = google.maps.places.PlaceResult;

所以而不是写:

@Component({
  selector: 'app-google-map',//....
 initDrawingManager(map: google.maps.Map): void {
    this.drawingManager = new google.maps.drawing.DrawingManager({
//....

我可以写:

@Component({
  selector: 'app-google-map',//....
 initDrawingManager(map: GoogleMap): void {
    this.drawingManager = new GoogleDrawingManager({
//....

我收到错误

google-map.model.ts:2 is the

google-map.model.ts:2 - 文件是我指定的命名空间别名 我虽然可以在 MapModule boostrap 之前加载别名文件,但它不起作用,我想是因为该文件甚至在此之前就被加载了?:

export function initializeMapApiImports(
  mapsAPILoader: MapsAPILoader,): () => Promise<void> {
  return () => mapsAPILoader.load()
}

@NgModule({
  declarations: [
    MapComponent,GoogleMapComponent,DataLayerMouseEventDirective
  ],imports: [
    CommonModule,CoreViewModule,AgmCoreModule.forRoot({
      apiKey: '...',libraries: ['places','drawing']
    }),],providers: [
    { provide: APP_INITIALIZER,useFactory: initializeMapApiImports,deps: [MapsAPILoader],multi: true }
  ]
})
export class MapModule { }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...