diff --git a/packages/core/src/services/config/IConfigService.ts b/packages/core/src/services/config/IConfigService.ts index 518d6f07d1..a7aab39e48 100644 --- a/packages/core/src/services/config/IConfigService.ts +++ b/packages/core/src/services/config/IConfigService.ts @@ -9,7 +9,7 @@ export interface ISceneConfig extends IRenderConfig { logoPosition?: PositionName; logoVisible?: boolean; animate?: boolean; - fitBoundsOptions?: mapboxgl.FitBoundsOptions; + fitBoundsOptions?: unknown; } // interface IValidateResult { diff --git a/packages/core/src/services/layer/ILayerService.ts b/packages/core/src/services/layer/ILayerService.ts index 546658958d..dde1cb7676 100644 --- a/packages/core/src/services/layer/ILayerService.ts +++ b/packages/core/src/services/layer/ILayerService.ts @@ -155,7 +155,7 @@ export interface ILayer { destroy(): void; source(data: any, option?: ISourceCFG): ILayer; setData(data: any, option?: ISourceCFG): ILayer; - fitBounds(fitBoundsOptions?: mapboxgl.FitBoundsOptions): ILayer; + fitBounds(fitBoundsOptions?: unknown): ILayer; /** * 向当前图层注册插件 * @param plugin 插件实例 @@ -222,7 +222,7 @@ export interface ILayerConfig { visible: boolean; zIndex: number; autoFit: boolean; - fitBoundsOptions?: mapboxgl.FitBoundsOptions; + fitBoundsOptions?: unknown; name: string; // blend: keyof typeof BlendType; pickedFeatureID: number; diff --git a/packages/core/src/services/map/IMapService.ts b/packages/core/src/services/map/IMapService.ts index 39dbea4ff1..9c0bee3a73 100644 --- a/packages/core/src/services/map/IMapService.ts +++ b/packages/core/src/services/map/IMapService.ts @@ -50,7 +50,7 @@ export interface IMapService { zoomOut(): void; panTo(p: Point): void; panBy(pixel: Point): void; - fitBounds(bound: Bounds, fitBoundsOptions?: mapboxgl.FitBoundsOptions): void; + fitBounds(bound: Bounds, fitBoundsOptions?: unknown): void; setZoomAndCenter(zoom: number, center: Point): void; setCenter(center: [number, number]): void; setPitch(pitch: number): void; diff --git a/packages/layers/src/core/BaseLayer.ts b/packages/layers/src/core/BaseLayer.ts index 5828e34c09..7e10fa9614 100644 --- a/packages/layers/src/core/BaseLayer.ts +++ b/packages/layers/src/core/BaseLayer.ts @@ -654,7 +654,7 @@ export default class BaseLayer extends EventEmitter /** * zoom to layer Bounds */ - public fitBounds(fitBoundsOptions?: mapboxgl.FitBoundsOptions): ILayer { + public fitBounds(fitBoundsOptions?: unknown): ILayer { if (!this.inited) { this.updateLayerConfig({ autoFit: true, diff --git a/packages/maps/src/mapbox/map.ts b/packages/maps/src/mapbox/map.ts index f30fb1853b..f6cf1b842b 100644 --- a/packages/maps/src/mapbox/map.ts +++ b/packages/maps/src/mapbox/map.ts @@ -157,11 +157,8 @@ export default class MapboxService this.panTo(pixel); } - public fitBounds( - bound: Bounds, - fitBoundsOptions?: mapboxgl.FitBoundsOptions, - ): void { - this.map.fitBounds(bound, fitBoundsOptions); + public fitBounds(bound: Bounds, fitBoundsOptions?: unknown): void { + this.map.fitBounds(bound, fitBoundsOptions as mapboxgl.FitBoundsOptions); } public setMaxZoom(max: number): void { diff --git a/packages/scene/src/IMapController.ts b/packages/scene/src/IMapController.ts index 0c7a11f140..e470dc5da8 100644 --- a/packages/scene/src/IMapController.ts +++ b/packages/scene/src/IMapController.ts @@ -49,7 +49,7 @@ export default interface IMapController { /** * 调整地图适合指定区域 */ - fitBounds(bound: Bounds, fitBoundsOptions?: mapboxgl.FitBoundsOptions): void; + fitBounds(bound: Bounds, fitBoundsOptions?: unknown): void; setRotation(rotation: number): void; diff --git a/packages/scene/src/index.ts b/packages/scene/src/index.ts index 54f35c1029..20ab32e1d6 100644 --- a/packages/scene/src/index.ts +++ b/packages/scene/src/index.ts @@ -59,7 +59,7 @@ class Scene private fontService: IFontService; private interactionService: IInteractionService; private animate: boolean; - private fitBoundsOptions: mapboxgl.FitBoundsOptions; + private fitBoundsOptions: unknown; private container: Container; public constructor(config: ISceneConfig) { @@ -279,14 +279,14 @@ class Scene public setZoom(zoom: number): void { this.mapService.setZoom(zoom); } - public fitBounds( - bound: Bounds, - fitBoundsOptions?: mapboxgl.FitBoundsOptions, - ): void { + public fitBounds(bound: Bounds, fitBoundsOptions?: unknown): void { this.mapService.fitBounds( bound, // 选项优先级:用户传入,覆盖animate直接配置,覆盖Scene配置项传入 - fitBoundsOptions || { ...this.fitBoundsOptions, animate: this.animate }, + fitBoundsOptions || { + ...(this.fitBoundsOptions as object), + animate: this.animate, + }, ); }