TabScript iOS内部无法运行Nativescript Tap事件

时间:2019-07-02 15:31:58

标签: nativescript nativescript-angular

我有一个简单的TabView,其中有两个选项卡,每个选项卡中都有一个按钮,按钮上的touch事件显示了一些奇怪的行为。

如果我仅直接输出TabView,则所有事件均有效:

<GridLayout rows="*">
  <TabView row="0">
    <StackLayout *tabItem="{title: 'Tab 1'}">        
      <button background="red" (tap)="alert('Hello 1')"></button>  
    </StackLayout>
    <StackLayout *tabItem="{title: 'Tab 2'}">        
      <button background="red" (tap)="alert('Hello 2')"></button>  
    </StackLayout>
  </TabView>
</GridLayout>

现在,当我在应用程序获取一些数据后有条件地显示TabView时,我会得到一些意外的行为:

 <TabView *ngIf="VarSetAfterServerResponse">
  ....

第一个按钮的Tap事件将仅触发一次或两次,最后一个按钮将继续工作。

这是一个简化的示例。我在所有选项卡中都包含了更复杂的内容,没有从HTML工作中设置的事件侦听器。 TypeScript附带的EventListener也不太可靠,试图在所有Angular LifeCycleEvents中设置这些内容。

这只是iOS上的问题。

1 个答案:

答案 0 :(得分:0)

{N} Angular似乎是一个错误,您可能想报告Github。作为解决方法,您可以在visibility上使用TabView

<TabView [visibility]="VarSetAfterServerResponse ? 'visible' : 'hidden'">
  ....