2017-06-13 46 views
0

我是新來的本地腳本。我不知道如何正確獲取stacklayout id。我正在使用打字稿處理Angular2。我嘗試了下面的代碼。我在命令提示符下輸入issue如何在nativescript中以編程方式獲取Stacklayout ID

JS:Error TypeError : Cannot set property 'visiblility' of undefined Context[object Object] 

HTML:

<StackLayout #target visibility="collapse" id ="stackLayout"> ..... </StackLayout> 

在點擊按鈕後,我需要以編程方式顯示stacklayout的可見性可見。

打字稿:

public stackLayout:StackLayout; 

onTap(args: EventData) { 

    this.animate(); 
} 

public animate() { 

    this.stackLayout.visibility = "visible" ; 
} 

回答

4

雖然你可以訪問編程的StackLayout(谷歌@ViewChild),它可能更容易調整你的代碼位(我要離開了不相關部分):

HTML:

<StackLayout (tap)="stackTapped()" [visibility]="stackVisible ? 'visible' : 'collapsed'"></StackLayout> 

或:

<StackLayout (tap)="stackTapped()" *ngIf="stackVisible"></StackLayout> 

組件:

stackVisible = false; 

stackTapped(): void { 
    this.stackVisible = true; 
} 
+0

嗨,你知道如何在nativescript調試對象。 console.log只適用於字符串。但我需要調試對象 – Steve

+0

您是否嘗試過'console.dir(obj','console.dump(obj)'或'console.log(JSON.stringify(obj)) '? –

+0

console.log(JSON.stringify(obj))爲我工作.thanks – Steve

相關問題