<firebase-query>错误:&#34;无法创建属性&#39; $ key&#39;在字符串...&#34;

时间:2016-07-22 19:01:11

标签: firebase polymer firebase-realtime-database polymer-1.0 polymerfire

我正在尝试使用polymerfire/firebase-query使用Vaadin Expense Manager Demo加载存储在Firebase中的数据。具体来说,我尝试将<vaadin-pouchdb>元素替换为<firebase-query></app-indexeddb-mirror>的组合。

https://github.com/vaadin/expense-manager-demo/blob/master/src/overview-page.html
<firebase-query id="query"
                log
                app-name="my-firebase"
                path="[[user.uid]]"
                data="{{expenses}}">
</firebase-query>

当我尝试加载页面时,我希望看到我的网格填充测试数据;但相反,我得到以下错误。

的console.log
  

firebase.js:284 Uncaught TypeError:无法创建属性&#39; $ key&#39;在字符串&#39; foo&#39;

     

firebase.js:284 Uncaught TypeError:无法创建属性&#39; $ key&#39;在字符串&#39; new&#39;

     

firebase.js:284 Uncaught TypeError:无法创建属性&#39; $ key&#39;数字&#39; 123&#39;

我期望通过{{expenses}}发送给应用的<firebase-query>值如下:

expenses = [
             {
               total    : 123    ,
               status   : 'new'  ,
               merchant : 'foo'  ,
             }
           ]

有什么可能造成这个错误?为什么要创建属性'$key'?等一下。可能是因为没有与费用关联的密钥,因为它们存储在我的Firebase中?

编辑:

以下是Firebase中的数据:

my-firebase
|
- my-userid-abc-123
  |- merchant: "foo"
  |- status: "new"
  |- total: 123

1 个答案:

答案 0 :(得分:2)

不支持在所有子级都具有原始<firebase-query>值的位置使用(boolean, string, number)。请考虑将这些值嵌套在对象中。