将类用作dart聚合元素的属性
我有一个聚合元素,它需要从web服务加载一些数据将类用作dart聚合元素的属性,dart,polymer,Dart,Polymer,我有一个聚合元素,它需要从web服务加载一些数据 <gallery-pol loader=""></gallery-pol> @CustomTag('gallery-pol') class PolymerGallery extends PolymerElement { @published GalleryDataLoader loader; ... } @CustomTag('gallery-pol') 类polymergalley扩展了polymereme
<gallery-pol loader=""></gallery-pol>
@CustomTag('gallery-pol')
class PolymerGallery extends PolymerElement {
@published GalleryDataLoader loader;
...
}
@CustomTag('gallery-pol')
类polymergalley扩展了polymerement{
@发布的GalleryDataLoader;
...
}
我不想在聚合元素中实现数据加载,因为它不应该固定到特定的web服务
<gallery-pol loader=""></gallery-pol>
@CustomTag('gallery-pol')
class PolymerGallery extends PolymerElement {
@published GalleryDataLoader loader;
...
}
将实现实际数据加载的对象传递到聚合元素的最佳方式是什么
我应该在主程序中选择我的元素并将加载程序分配给元素吗?
或者有没有其他方法可以直接将其作为属性传递
谢谢,,
LoSputs< P>我会考虑将加载器建模为自定义元素。从那里你可以选择他们如何沟通 一种是让画廊作为孩子找到加载器:
<z-gallery>
<z-gallery-loader></z-gallery-loader>
</z-gallery>
另一种方法是通过事件进行通信:
<z-gallery-loader on-load-gallery="{{ loadGallery }}">
<z-gallery></z-gallery>
</z-gallery-loader>
可以触发“加载库”(或者一些更以用户操作为中心的事件)自定义事件以请求加载数据,并且由于它是作为事件的目标包含的,所以加载程序可以执行它的工作并将数据推回库中
如果不希望包含关系存在,则可以通过使用触发加载程序上事件的不同父元素重定向事件:
<z-gallery-view on-load-gallery="{{ loadGallery }}">
<z-gallery-loader></z-gallery-loader>
<z-gallery></z-gallery>
</z-gallery-view>
在这种情况下,loadGallery将委托给加载器子级。没有问题,您可以使用
loader
属性分配加载器。您希望从何处或如何通过装载机?您是否希望通过代码(querySelector('gallery-pol')作为PolymerGallery来执行此操作。loader=loader代码>?或者您是否有
元素位于阴影DOM中的
元素?在哪里定义应该使用什么加载程序实现?我在
<z-gallery-view on-load-gallery="{{ loadGallery }}">
<z-gallery-loader></z-gallery-loader>
<z-gallery></z-gallery>
</z-gallery-view>