我有一个简单的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上的问题。
答案 0 :(得分:0)
{N} Angular似乎是一个错误,您可能想报告Github。作为解决方法,您可以在visibility
上使用TabView
。
<TabView [visibility]="VarSetAfterServerResponse ? 'visible' : 'hidden'">
....