Polymer:dom 上的点击事件 - 在 index.html 中未识别重复项

Polymer: on-click event on dom-repeat item is not identified in index.html

我有一个带有入口点 index.html 的聚合物应用程序。出于某种原因,我不得不在 index.html 本身内部使用 dom-repeat 而不是聚合物元素。代码是这样的

    <dom-bind id="mainbody">
    <template>
        <app-drawer-layout>
            <app-drawer slot="drawer">
                <template is="dom-repeat" id="mainDemoBody">
                    <paper-item data-value={{item.is}} id="demoItem" on-tap="onElementSelect"> 
                      {{item.is}}         
                    </paper-item>
                </template>
            </app-drawer>
            <div> Main content
                <div>
        </app-drawer-layout>
    </template>
</dom-bind>

我在脚本标签中定义了点击功能,就像这样

    <script>
    function onElementSelect(e) {
        console.log('here');
        this.selectedElement = e.model.item;
        this.elementTags = this.selectedElement.tags;
        this.demoLoaded = false;
    }
</script>

但是在用户界面上单击 dom-repeat 的任何项目时出现以下错误

侦听器方法onElementSelect未定义

谁能帮我解决这个问题,在此先感谢。

"onElementSelect" 似乎没有与 dom-bind#mainbody 绑定。 我的建议是创建一个与主体绑定的函数。这似乎对我有用。

代码:-

var mainbody = document.getElementById('mainbody');
mainbody.onElementSelect = function(e){
        console.log('here');
        this.selectedElement = e.model.item;
        this.elementTags = this.selectedElement.tags;
        this.demoLoaded = false;
}

编辑:请注意,所提供的解决方案对于聚合物元件来说是不合适的或必需的。在这种情况下需要此特定修复,因为 html 文件中使用了聚合物组件。