ionic3 - 传单没有加载瓷砖
问题描述
我正在尝试在我的 ionic 应用程序上显示传单地图,但除了我创建的标记外,它不显示任何内容!
如您所见,没有对传单或 mapbox 服务器的请求(我使用 mapbox)
这是我的代码:
import { Component } from "@angular/core";
import leaflet from "leaflet";
@Component({
templateUrl: "test-map.html"
})
export class TestMap {
leafletMap: any;
constructor() {}
ionViewDidLoad() {
this.leafletMap = leaflet.map("leafletmap", {
center: [28.618072, 51.538088],
zoom: 18,
maxZoom: 18
});
this.openMap();
}
openMap() {
setTimeout(() => {
this.leafletMap.invalidateSize();
}, 0);
leaflet.tileLayer(
"https://api.tiles.mapbox.com/v4/{id}" +
"/{z}/{x}/{y}.png?access_token={my-access-token}",
{
attribution: "",
maxZoom: 18,
id: "mapbox.streets",
accessToken: "{my-access-token}"
}
);
this.leafletMap.setView(leaflet.latLng(28.618072, 51.538088));
leaflet.marker([28.618072, 51.538088]).addTo(this.leafletMap);
}
}
如您所见,我已经尝试过invalidateSize
!
我该如何解决这个问题?
解决方案
正如@IvanSanchez 在评论中提到的那样,我应该添加tileLayer
到map
:
leaflet.tileLayer(
"https://api.tiles.mapbox.com/v4/{id}" +
"/{z}/{x}/{y}.png?access_token={my-access-token}",
{
attribution: "",
maxZoom: 18,
id: "mapbox.streets",
accessToken: "{my-access-token}"
}
).addTo(this.leafletMap);
推荐阅读
- perl - “printf 中的冗余参数”警告
- reactjs - 重定向到另一个反应页面并传递 axios 结果
- node.js - 使用winston嵌套日志记录不创建文件
- angular - 导致角循环依赖的通用/共享类型
- batch-file - 如何让 cmd 从 Windows 备份中“组合”多个文件?
- python-3.x - 将灰度图片转换为颜色图
- wordpress - 如何在 Wordpress 中将子菜单更改为自定义 HTML?
- android - 在 Android React Native 上的注销和登录步骤之后,图标不会出现
- fabricjs - Fabricjs 折线部分被遮挡
- kubernetes - Kubernetes 如何帮助降低托管成本?