2015-02-20 5 views
0

Вот мой кодПолимерные бумажные вкладки показывают предыдущую вкладку при касании

//... 

    <paper-tabs 
     selected="{{tab}}" 
     on-tap="{{handleTab}}"> 
     <template repeat="{{initial in pagination}}"> 
     <paper-tab 
      name="{{initial}}"> 
      {{initial}} 
     </paper-tab> 
     </template> 
    </paper-tabs> 

//... 

tab: "A", 

pagination: [ 
    'A', 
    'B', 
    'C' 
], 

handleTab: function (event, detail, sender) { 
    console.log(sender.selected); 
}, 

//... 

По умолчанию это «A». Когда я нажимаю «B», консоль покажет «A»; затем нажмите «C», консоль покажет «B»; затем снова нажмите «C», консоль покажет «C». Он всегда показывает имя вкладки перед нажатием.

Любая идея?

+1

выбранных изменений после того, как запись крана распространилась. Попробуйте прослушивать 'on-core-select' на элементе' 'вместо того, чтобы коснуться его. –

+0

@ssorallen это работает. Но он стреляет дважды. Есть идеи? – DrXCheng

ответ

1
<paper-tabs on-core-select="{{handleTab}}"> 
    <!-- ... --> 
</paper-tabs> 

От core-select event description: «Удар, когда состояние выбора предмета изменилось. Это событие запускается, когда элемент выбран или отменен. IsSelected деталь свойство содержит состояние выбора.»

handleTab: function (event, detail, sender) { 
    if (detail.isSelected) { 
    console.log(detail.item); 
    } 
} 
Смежные вопросы