0

Google マップのディレクティブを作成しました。親コンテナーの幅 (動作) の 100% と、親コンテナーの高さの 100% (CSS の高さ:100%; では動作しませんでした) をカバーする必要があります。しかし、CSS はもはや私の問題ではありません。だから私はメソッドを作成しました

getHeightOfMap(){

        if(document.getElementById('mapContainer').offsetHeight<100){
        var containerHeight = document.getElementById('map-canvas').parentNode.parentNode.parentNode.offsetHeight;
        if(containerHeight<100){
            containerHeight = 400;
        }
        return containerHeight+"px";
        }
        return document.getElementById('mapContainer').offsetHeight+"px";
    }

そして、これがhtmlテンプレートでの使用方法です

<div id="mapContainer" style="margin:4px 0 -5px 0;" ng-style="{ 'height' : googleMapsCtrl.getHeightOfMap() }">
    <div id="map-canvas" style="display:block;height:100%;"></div>
</div>

これはうまく機能しますが、パフォーマンスを低下させるものを「リフレッシュ」するために使用されng-style(AngularJS Batarangが言っていることです)、しばらくするとアプリがクラッシュすることがわかりました。

なぜハプニングなの?そして、高さの問題を解決する際の私のアプローチの何が問題になっていますか?

4

0 に答える 0