我正在学习聚合物。我的目标是创建一个完全独立的元素(在应用程序中进行路由,管理应用程序中不同子元素的数据需求)。我的目标是创建一个用户可以注入现有网站的单个元素。例如:
<my-app key="XXXXXXXXXX"></my-app>
'my-app'被注入现有网站。 key的值与内部web-api调用一起使用,用于检索特定于此实现的数据。
'my-app'的内部结构可能是这样的:
<dom-module id="my-app">
<template>
<game-list></game-list>
<game-detail></game-detail>
<play-game></play-game>
<leader-board></leader-board>
</template>
</dom-module>
'game-list'提供了用户可以玩的可能游戏列表。此处的内容取决于'key'属性的值。同样,“游戏细节”将是从“游戏列表”中选择的游戏的细节。 'play-game'是允许用户玩他们所选游戏的UI。最后,'leader-board'显示使用此应用程序的所有玩家的排名。
我需要一些有关管理每个子元素的json数据需求的策略的帮助。
总结一下,缓存数据的策略/最佳实践是什么?
我做了很多AngularJS开发,并使用Angular的服务(它们是单例)来缓存UI的数据。有没有办法与Polymer元素做类似的事情?有没有办法创建一个充当数据存储的内部机制?
我想我可以依赖本地存储,但更喜欢某种类型的“服务”,它充当所有元素可以利用来检索其数据的资源。这个“服务”将负责向WebAPI发送请求(通过iron-ajax)并根据需要缓存数据。
感谢您的帮助。
答案 0 :(得分:1)
在一个应用中,我使用iron-localstorage
来缓存后端数据。
您可以创建自己的backend-element
包装iron-localstorage
并透明地处理所有元素的缓存。
此外,您还可以查看iron-meta,它使用单一模式在不同组件之间共享数据。