如何滚动到铁元素列表的最后一个元素(dart聚合物1.0)?
每次更新其型号后,我想滚动到如何滚动到铁元素列表的最后一个元素(dart聚合物1.0)?,dart,dart-polymer,polymer-1.0,Dart,Dart Polymer,Polymer 1.0,每次更新其型号后,我想滚动到iron list的最后一个元素,但调用IronList.scrollToIndex()仅显示列表的一部分。更清楚地说,我有聚合物元素: @PolymerRegister('main-app') class MainApp extends PolymerElement { @property List<String> items = []; MainApp.created() : super.created(); @re
iron list
的最后一个元素,但调用IronList.scrollToIndex()
仅显示列表的一部分。更清楚地说,我有聚合物元素:
@PolymerRegister('main-app')
class MainApp extends PolymerElement {
@property
List<String> items = [];
MainApp.created() : super.created();
@reflectable
void onAdd([_, __]){
var fst = items.length;
var lst = new List.generate(30, (x) => (fst+x).toString());
addAll("items", lst);
($['list'] as IronList).scrollToIndex(items.length-1);
}
}
@PolymerRegister('main-app'))
类MainApp扩展了聚合关系{
@财产
列表项=[];
MainApp.created():super.created();
@可反射
添加时无效([[uu,[uuu]){
var fst=项目长度;
var lst=new List.generate(30,(x)=>(fst+x).toString();
添加所有(“项目”,lst);
($['list']作为IronList)。滚动索引(items.length-1);
}
}
html:
#名单{
高度:100px;
宽度:100px;
}
{{item}}
添加
当我第一次单击按钮时,它会显示:
这里怎么了?如何正确更新视图?
(软件包版本:
polymer 1.0.0-rc.6
,polymer\u elements 1.0.0-rc.3
,polymer\u interop 1.0.0-rc.5
)您是否可以尝试使用异步(()=>)用滚动索引来包装行
?用async
包装它不会给我带来任何明显的效果。看起来像是异步问题或scrollToIndex问题。你检查过聚合物问题了吗?看起来很接近。还有一条评论说,在这个问题被修复后,有人遇到了这个问题。我也可以在Dartium和Chrome中复制(调整浏览器的大小会显示缺少的项目)。在Polymer中修复此问题的最佳方法(如果这实际上是一个bug)是创建一个repo,如Plunker、JSFIDLE等。。。并在铁名单GitHub repo中创建错误报告。好的,我添加了错误报告:
<dom-module id="main-app">
<template>
<style>
#list {
height: 100px;
width: 100px;
}
</style>
<iron-list items="{{items}}" id="list">
<template>
<div>{{item}}</div>
</template>
</iron-list>
<paper-button raised on-tap="onAdd">add</paper-button>
</template>
</dom-module>