对于上帝的爱,我无法获得选择(或动画页)的工作。我试着学习教程,但它们没有提到如何实际执行从一个页面到另一个页面的转换(或者有些事情我完全不理解),我的猜测是,我应该只需要设置core-animated-pages的core-animated-pages值,但这也不起作用。
首先,detail.item对象似乎不包含正确的内容。我可能做了些微不足道的错事。当尝试从on-core-select事件访问“on-core-select”时,我只得到undefined。如果我使用:this.$.selector.selectedIndex通过id访问该属性,它将工作。
此外,做以下工作似乎什么也做不了:
var pages = this.$.pages;
pages.selected = selectedIndex;请参阅下面的代码,以了解我正在尝试做什么:
<!-- 2. Load the component using an HTML Import -->
... Imports here ...
<polymer-element name='index-app'>
<template>
<core-scaffold>
<core-header-panel navigation flex mode="seamed">
<core-toolbar>Application</core-toolbar>
<core-menu theme="core-light-theme" >
<core-selector on-core-select="{{selectAction}}" id="selector">
<core-item icon="settings" label="item1"></core-item>
<core-item icon="settings" label="item2"></core-item>
</core-selector>
</core-menu>
</core-header-panel>
<div tool>{{item.label}}</div>
<div class="content">
<core-animated-pages transitions="cross-fade-all" id="pages" selected="{{selected}}">
<section id="page1" hidden?="{{selected!=0}}">
<div cross-fade>Home page contents</div>
</section>
<section id="page2" hidden?="{{selected!=1}}">
<div cross-fade>Gallery contents</div>
</section>
</core-animated-pages>
</div>
</core-scaffold>
</template>
<script>
Polymer({
ready: function(){
this.$.selector.selected = 0;
},
selectAction: function(e, detail){
var selectedIndex = this.$.selector.selectedIndex;
var pages = this.$.pages;
pages.selected = selectedIndex;
}
});
</script>
</polymer-element>发布于 2015-03-02 22:06:06
尝试对核心选择器和核心动画页使用selected={{selection}}。如果我没有记错,selected已发布的属性将绑定到这两个元素的项的索引。在核心选择器中,它将绑定到已选择的项的索引,并且在核心动画页中将提取绑定值,并将其用作索引以抓取页面并显示该页。
换句话说,您不需要事件处理程序或对隐藏元素的手动操作。数据绑定系统为您处理所有这些。
https://stackoverflow.com/questions/28820182
复制相似问题