在聚合物文档中,当我们使用app-localstorage时,如果我们设置属性sessionOnly =" true"和存储=" window.sessionStorage"数据应该存储在会话存储中,但它仍然存储在localstorage中的数据
<paper-input value="{{myData}}"></paper-input>
<app-localstorage-document key="search" data="{{myData}}" sessionOnly="true" storage="window.sessionStorage">
</app-localstorage-document>
如何在会话中存储数据,当用户关闭浏览器时它应该销毁?
答案 0 :(得分:1)
你的代码片段中有一些错误。
首先,Polymer使用两种情况 - camelCase
和dash-case
。第一个用于属性名称,第二个用于属性(see specification)。由于您使用sessionOnly
属性作为属性,因此应将其更改为session-only
。
因此修正后的代码片段为:
<paper-input value="{{myData}}"></paper-input>
<app-localstorage-document key="search" data="{{myData}}" session-only="true">
</app-localstorage-document>
其次,请注意我还从我的代码片段中删除了storage
属性。此属性是计算的,因此无法设置。从element's API docs开始,这实际上并不清晰,但只能通过检查element's source code:
storage: {
type: Object,
computed: '__computeStorage(sessionOnly)'
}
如果您有任何其他问题,请在评论中不要犹豫。