我正在尝试为Power BI开发自定义视觉效果。
我有div元素与传单地图。当我没有设置高度时,视觉是空的。我可以使用this.mapDiv.style.height="300px";
但这是固定的。 如何通过视口动态设置高度?
这是我的代码
private mapDiv: HTMLElement;
constructor(options: VisualConstructorOptions) {
this.mapDiv = document.createElement("div");
this.mapDiv.id = "mapid";
options.element.appendChild(this.mapDiv);
var map = L.map('mapid');
map.setView([48.14, 17.12], 13);
L.tileLayer('https:....', {
minZoom: 4,
maxZoom: 18,
}).addTo(map);
}
public update(options: VisualUpdateOptions) {
// this.mapDiv.style.height = "300px"; WORKS
this.mapDiv.style.height = options.viewport.height.toString(); // DOESNT WORKS !!!
}
你能帮忙吗?
答案 0 :(得分:0)
您需要将“px”追加回options.viewport.height
,因为它只是一个数字。
即。你可以尝试
this.mapDiv.style.height = options.viewport.height + "px";