angular - 如何在 VS Code IntelliSense 中显示 Leaflet Marker-Cluster Freezable 方法
问题描述
我正在开发一个使用 Leaflet 地图服务的 Angular 项目。我遇到了集群问题。我想切换集群,为此我找到了一个包,其中包含启用/禁用集群功能的方法:Leaflet.MarkerCluster.Freezable
我已按照软件包安装说明进行操作:
npm install leaflet.markercluster.freezable --save
将它安装在我的node_modules
文件夹下并更新package.json
(安装成功)- 现在,如果我尝试
import 'leaflet.markercluster.freezable';
在我的Type-Script 文件中,我的 VS 代码不会在 IntelliSense 功能中显示包中的方法。
我不明白出了什么问题(我认为导入可能有问题)。
解决方案
不幸的是,Leaflet.MarkerCluster.Freezable 库还没有可用的类型。
您应该能够自己编写它们,如下所示:
Leaflet.markercluster.freezable.d.ts
import * as L from 'leaflet';
declare module 'leaflet' {
class MarkerClusterGroup {
freezeAtZoom(frozenZoom?: number | boolean | 'max' | 'maxKeepSpiderfy'): this;
unfreeze(): this;
disableClustering(): this;
disableClusteringKeepSpiderfy(): this;
enableClustering(): this;
}
}
然后在你的 TypeScript 项目配置中引用这个定义文件。
推荐阅读
- laravel - CloudWatch single Log Stream for Fargate
- angular - 包含在另一个单独的项目中时出现 Angular 库问题
- c++ - 使用 C++ 和 bcrypt 标头时的编译错误
- gitlab-ci - 如何使用 Gitlab CI 缓存我的存储库的所有目录
- azure - 访问部署在 Azure 容器实例上的应用程序
- java - Testcontainers - 在集成测试中使用不同的数据库运行容器
- javascript - 如何获取列表值的总和,并在取消选择值后减去本机反应
- express - 本地 API 服务器的“post”不工作的原因,即使它的“get”工作正常
- nativescript - 使用“tns create”创建的项目使用任何“ng generate”命令都会出错
- vue.js - “@click=methodName(id)”函数没有返回 vue.js 中的 id