如何防止firebase查询元素更新数据
我正在使用polymer和firebase创建一个web应用程序。为了获得数据库中的列表,我使用了polymerfire的“firebase query”元素 现在,我从数据库中获取的项目列表是人们在我的应用程序上发布的帖子。现在我有了firebase查询元素,如下所示:如何防止firebase查询元素更新数据,firebase,firebase-realtime-database,polymer,polymerfire,Firebase,Firebase Realtime Database,Polymer,Polymerfire,我正在使用polymer和firebase创建一个web应用程序。为了获得数据库中的列表,我使用了polymerfire的“firebase query”元素 现在,我从数据库中获取的项目列表是人们在我的应用程序上发布的帖子。现在我有了firebase查询元素,如下所示: <firebase-query id="query" path="/posts" limit-to-last="15" data="{{posts}}"> </firebase-query&g
<firebase-query
id="query"
path="/posts"
limit-to-last="15"
data="{{posts}}">
</firebase-query>
现在,如果我有一群人一次发布了很多内容,这个列表将每秒更新一次,这将很难阅读
是否有办法防止firebase query
元素在初始加载完成后停止更新,并在调用某个函数时可能再次更新
我试图添加一个disabled属性,但这只会删除
data
属性({{posts}}
在我的例子中)中的任何内容,所以当设置disabled时,屏幕上不会显示任何内容。我不熟悉firebase查询,但您可以执行简单的操作。在属性posts
setobserver
函数上
posts: {
Type: Array,
value: function(){return []},
observer: "debouncePosts"
}
然后在js中,您可以在我设置的位置定义去盎司函数,例如,10000毫秒(10秒),并调用一些回调函数,我在其中设置this.posts
到currentPosts
属性,该属性将在模板中呈现
debouncePosts: function(data) {
this.debounce("debouncePost", function(){
this.set("currentPosts", this.posts);
}.bind(this), 10000)
}
html模板如下所示:
<template is="dom-repeat" items="[[currentPosts]]" as="post">
<div>[[post.content]]</div>
</template>
[[post.content]]
去盎司的文件:
若你们喜欢用不同的方式来做,比如每当用户按下更新按钮时更新数据,那个么现在对你们来说真的很容易。只需点击一些按钮进行设置,然后在函数中您将执行类似于this.set(“currentPosts”,this.posts)
我尝试创建一个包含以下内容的函数:this.set(“currentPosts”,this.posts),但dom重复模板没有更新。。。
<template is="dom-repeat" items="[[currentPosts]]" as="post">
<div>[[post.content]]</div>
</template>