首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Polymerfire dom-repeat with Firebase对象

Polymerfire dom-repeat with Firebase对象
EN

Stack Overflow用户
提问于 2016-10-23 16:43:09
回答 5查看 641关注 0票数 1

我希望能够显示所有FirstNameZipCodes的列表。我的数据如下:

代码语言:javascript
复制
/user
|
|__INAxzxWKQrSAfA7tapV0c08YvfJ3
|   |____FirstName:"James"
|   |____ZipCode:"90210"
|
|__ANAczxWKQrEAfA7tapV0c08YvfX6
    |____FirstName:"Simon"
    |____ZipCode:"40213"

Polymerfire的firebase文档如下所示

代码语言:javascript
复制
<firebase-document
    app-name="contacts"
    path="/user"
    data="{{allUsers}}">
</firebase-document>

我的dom重复是这样的。

代码语言:javascript
复制
<template is="dom-repeat" items="{{_makeArray(allUsers)}}">
    <div class="profile card">
        {{item.FirstName}} 
    </div>
</template>

我添加了函数

代码语言:javascript
复制
_makeArray: function(items) {
  return Object.keys(items).map(function (key) {items[key]});
}

没有错误,但我也没有从DOM中得到任何信息

EN

回答 5

Stack Overflow用户

发布于 2017-01-06 23:50:08

只需使用firebase-query而不是firebase-document。你会得到一个数组。

代码语言:javascript
复制
<firebase-query
  app-name="contacts"
  path="/user"
  data="{{allUsers}}">
</firebase-query>

<template is="dom-repeat" items="{{allUsers)}}">
  <div class="profile card">
    {{item.FirstName}} 
  </div>
</template>
票数 1
EN

Stack Overflow用户

发布于 2016-10-24 03:18:38

dom-repeat接受一个数组作为items属性。你可以这样做:

代码语言:javascript
复制
<template is="dom-repeat" items="[[makeArray(allUsers)]]">

...

makeArray: function(items) {
  return Object.keys(items).map(function (key) {items[key]});
}
票数 0
EN

Stack Overflow用户

发布于 2016-11-12 23:43:31

您忘记了返回值:

代码语言:javascript
复制
_makeArray: function(items) {
  return Object.keys(items).map(function (key) { return items[key]; });
}

它与我的工作很好,数据显示也很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40201105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档