我有一个入口点为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>
但是我在用户界面上单击任何重复重复项都出现以下错误
侦听器方法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;
}