是否可以从JavaScript访问dom-repeat
内的dom-if
?
<template is="dom-if" if={{someCondition}}>
<template is="dom-repeat" items={{data}}></template>
</template>
我可以使用dom-if
访问this.$.id
,但如何访问dom-repeat
?
答案 0 :(得分:1)
您必须使用DOM API的this.$$(selector)
功能。根据文档
$$返回本地DOM中与选择器匹配的第一个节点。
Polymer({
is: 'my-elem',
accessSelector: function() {
alert(this.$$('div').textContent);
}
});
&#13;
<!DOCTYPE html>
<html>
<head>
<base href="https://polygit.org/components/">
<script src="webcomponentsjs/webcomponents-lite.min.js"></script>
<link href="polymer/polymer.html" rel="import"/>
</head>
<body>
<my-elem></my-elem>
<dom-module id="my-elem">
<template>
<template is="dom-if" if="true">
<template is="dom-repeat" items='[ 1, 2, 3 ]'>
<div>Item: {{item}}</div>
</template>
</template>
<button on-tap="accessSelector">Selector</button>
</template>
</dom-module>
</body>
</html>
&#13;