UNPKG

leaflet-coord-converter-xiaoai

Version:

一个 Leaflet 坐标转换插件,支持GPS84、GCJ02、BD09坐标系之间的转换,提供简单易用的 API 和完整的 TypeScript 类型定义。

67 lines (47 loc) 1.81 kB
# TypeScript 类型测试结果 ## ✅ 测试成功! 经过修正,TypeScript 类型定义现在可以正常工作了。 ## 主要修复 1. **修改了 `tsconfig.json`**: - 添加了 `examples/**/*` 到 `include` 中 - 移除了 `examples` 从 `exclude` 中 - 这样 TypeScript 编译器可以正确识别类型扩展 2. **类型定义文件 `src/CoordConverter.d.ts`** 已正确扩展了 Leaflet 的接口: ```typescript interface TileLayerOptions { coordType?: "gps84" | "gcj02" | "bd09"; } interface GridLayerOptions { coordType?: "gps84" | "gcj02" | "bd09"; } ``` ## ✅ 现在可以正常使用的语法 ```typescript // 这些用法现在都不会有 TypeScript 错误了: L.tileLayer("tiles/{z}/{x}/{y}.png", { attribution: "Leaflet高德离线地图", coordType: "gcj02", // ✅ 类型安全 tms: true, }).addTo(map); // 或者使用变量: const tileLayerOptions: L.TileLayerOptions = { attribution: "高德地图", coordType: "gcj02", // ✅ 类型安全 maxZoom: 18, tms: true, }; // GridLayer 选项也支持: const gridLayerOptions: L.GridLayerOptions = { coordType: "bd09", // ✅ 类型安全 tileSize: 256, }; ``` ## 测试文件 - **`examples/typescript-demo.ts`** - TypeScript 类型测试示例,没有编译错误 - **`examples/typescript-test.html`** - 浏览器中的测试页面 ## 支持的坐标系 - `"gps84"` - GPS84/WGS84 坐标系 - `"gcj02"` - 火星坐标系(高德、腾讯等) - `"bd09"` - 百度坐标系 ## 结论 TypeScript 类型定义现在完全正常工作!你可以安全地使用 `coordType` 属性,TypeScript 会提供完整的类型检查和智能提示。