2017-05-10 21 views
2

私はIonic 2で小さなアプリケーションを作成しています。今度はイオンサーバーでブラウザでテストしています。私のmap.htmlファイルでは、私は次のコードしている:Ionic 2 document.getElementByIdがnullを返します

this.platform.ready().then((readySource) => { 
console.log('Platform ready from', readySource); 
console.log(document.getElementById('myMap')); 
//this.initializeMap(); 
}); 

コンソール出力::私のmap.tsファイルで

<ion-content > 
    <div id="myMap"></div> 
</ion-content> 

を、私はこれを実行しようとしました

Platform ready from dom null

は私をスクラッチしかし、なぜそれがその要素を見つけることができないのかはまだ分かりません。

助けていただけたら幸いです!

答えて

4

idで要素ベースを取得しようとしている場合は、javascriptを使用する代わりにangleのを使用できます。

これを行うには、このようなコードを記述します。

あなたmap.htmlで

<ion-content > 
    <div #myMap></div> 
</ion-content> 
あなたmap.tsで

あなたはあなたの助けのための角度/コア

import { Component, ViewChild } from '@angular/core'; 

... 

export class MapPage { 
    @ViewChild('myMap') myMap ; 

    constructor(public viewCtrl: ViewController, params: NavParams) { 
    console.log(this.myMap); //visit your element by using this.myMap 
    } 

} 
+1

おかげで@からViewChildをインポートすることを確認してください。それは魅力のように機能します。 –

+0

私のシナリオでは、私は動的イオングリッドを持っている、私はイオンcolをアクセスする必要があります。上記のコードを使用してthis.myMapはnullを返します – amy

関連する問題