设置选中的纸标签
Set selected of Paper-Tabs
我正在尝试 select 基于它的 data-id
属性的 paper-tab
。我有元素,但我无法更改为 inner_tabview
.
的 selected
属性
我有一个聚合物:
<paper-tabs id="inner_tabview" noink="true">
<template repeat="{{item in tabNames}}">
<paper-tab data-id="{{item['id']}}"><h3>{{item['name']}}</h3></paper-tab>
</template>
</paper-tabs>
及其背后的一些 Dart 代码:
selectTab(itemId) {
PaperTab item = shadowRoot.querySelector("paper-tab[data-id='" + itemId + "']");
print('Selecting: ' + itemId + ', text:' + item.text);
PaperTabs tabView = shadowRoot.querySelector('#inner_tabview');
tabView.selected = item; // This doesn't work
}
使用整数(索引)更改 selected 有效,但我不知道索引应该是什么。
我目前唯一能想到的就是找到所有 paper-tab
元素并获取 List
中正确元素的索引。但这听起来有点傻。
还有其他方法吗?
我不知道为什么 querySelector
不起作用,但 selected
默认情况下需要索引而不是元素。
如果指定 valueattr
属性,则可以使用索引以外的其他属性。
<paper-tabs id="inner_tabview" noink="true" valueattr="data-id">
<template repeat="{{item in tabNames}}">
<paper-tab data-id="{{item['id']}}"><h3>{{item['name']}}</h3></paper-tab>
</template>
</paper-tabs>
然后
tabView.selected = itemId;
应该也可以
我正在尝试 select 基于它的 data-id
属性的 paper-tab
。我有元素,但我无法更改为 inner_tabview
.
selected
属性
我有一个聚合物:
<paper-tabs id="inner_tabview" noink="true">
<template repeat="{{item in tabNames}}">
<paper-tab data-id="{{item['id']}}"><h3>{{item['name']}}</h3></paper-tab>
</template>
</paper-tabs>
及其背后的一些 Dart 代码:
selectTab(itemId) {
PaperTab item = shadowRoot.querySelector("paper-tab[data-id='" + itemId + "']");
print('Selecting: ' + itemId + ', text:' + item.text);
PaperTabs tabView = shadowRoot.querySelector('#inner_tabview');
tabView.selected = item; // This doesn't work
}
使用整数(索引)更改 selected 有效,但我不知道索引应该是什么。
我目前唯一能想到的就是找到所有 paper-tab
元素并获取 List
中正确元素的索引。但这听起来有点傻。
还有其他方法吗?
我不知道为什么 querySelector
不起作用,但 selected
默认情况下需要索引而不是元素。
如果指定 valueattr
属性,则可以使用索引以外的其他属性。
<paper-tabs id="inner_tabview" noink="true" valueattr="data-id">
<template repeat="{{item in tabNames}}">
<paper-tab data-id="{{item['id']}}"><h3>{{item['name']}}</h3></paper-tab>
</template>
</paper-tabs>
然后
tabView.selected = itemId;
应该也可以