Polymerfire Firebase查询无法正常工作且没有错误日志 [英] Polymerfire firebase-query not working and no error log

查看:118
本文介绍了Polymerfire Firebase查询无法正常工作且没有错误日志的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用Polymerfire从Firebase提取数据,但是它不起作用.

I want to fetch data from Firebase using polymerfire and somehow it doesn't work.

Firebase数据

lol-project (a name with 5 randomized letters)
+- events
    +- (some random event id, which is auto-generated)
        +- name: "haha"
        +- desc: "hihi"
    +- (some random event id, which is auto-generated)
        +- name: "huhu"
        +- desc: "hehe"

代码(Polymer v1.6,Polymerfire v0.10.2)

<link rel="import" href="../../../bower_components/polymerfire/polymerfire.html">
<link rel="import" href="../../../bower_components/polymerfire/firebase-auth.html">
<link rel="import" href="../../../bower_components/polymerfire/firebase-query.html">
...
<firebase-auth user="{{user}}"></firebase-auth>

<firebase-query id="eventquery" path="/events" data="{{events}}"></firebase-query>

<div class="Page-container" id="section1">
    <template is="dom-repeat" items="[[events]]" as="item">
        <p>[[item.name]]</p>
    </template>
</div>
...
properties: {
    events: {
        type: Object,
        observer: '_eventsChanged'
    }
},

_eventsChanged: function(newData, oldData) {
    console.log("it changed?!");
    console.info(newData);
}

Firebase规则

{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null"
  }
}

没有错误,没有数据. console.info(newData);给出空数组.经过数小时的谷歌搜索,我偶然发现了类似的情况,显然在这里(是的,这个问题与那个问题非常相似).

No error, no data. The console.info(newData); gives empty array. After hours of googling, I stumbled upon similar case, which apparently left unanswered in here (yes, this problem is pretty much similar to that one).

有人知道我想念什么吗?请帮忙.

Anyone knows what I'm missing? Please help.

推荐答案

几件事:

  1. events是一个数组. 请参见 firebase-query :如果子节点查询中的对象是对象(大多数情况下),数据将是这些对象的数组,并添加了一个额外的$ key字段来表示键."
  2. 无需导入polymerfire.html
  3. 确定要登录吗? 您可以在firebase-auth <firebase-auth user="{{user}}" signed-in="{{signedIn}}"></firebase-auth>中传播登录属性 并将User signedIn is {{signedIn}}放在<div>上方.
  1. events is an Array. See firebase-query: "If the child nodes of the query are objects (most cases), data will be an array of those objects with an extra $key field added to represent the key."
  2. No need to import polymerfire.html
  3. Are you sure you are logged in? You can propagate signed-in property in firebase-auth <firebase-auth user="{{user}}" signed-in="{{signedIn}}"></firebase-auth> and place User signedIn is {{signedIn}} just above your <div>.

您还可以临时更改数据库安全性规则.

You could also temporarily change your database security rules.

这篇关于Polymerfire Firebase查询无法正常工作且没有错误日志的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆