使用Polymer的firebase-collection来推送新文档

时间:2015-08-05 17:17:51

标签: firebase polymer polymer-1.0

我在理解如何将新文档推送到firebase时遇到问题。我检查了文档here,它引用了一个名为add(data)的方法,但我真的不知道如何使用它(因为我的Polymer技能仍然是基本的)。有人可以通过扩展下面的示例元素来展示如何推送新文档。

<dom-module id="my-position">
  <template>
    <firebase-collection 
                        location="my-firebase-app.firebaseio.com/positions">
    </firebase-collection>

    <template > 
      <input is="iron-input" bind-value="{{value}}"
      placeholder="Your name here...">
    </template>
  </template>
</dom-module>

3 个答案:

答案 0 :(得分:2)

使用firebase-document和数据绑定将对象“推送”到firebase。

https://elements.polymer-project.org/elements/firebase-element?active=firebase-document

Example

答案 1 :(得分:1)

这是一个非常简单的例子,展示了如何做到这一点。它基于此video中给出的信息(虽然使用聚合物0.5,但概念非常相似)。

<dom-module id="my-elem">
  <template>
    <firebase-collection id="ref"
      location="https://my-firbase-app/positions/">
    </firebase-collection>

    <form id="createPosition">
      <input is="iron-input" bind-value="{{name}}" type="" id="name" placeholder="name here...">
    </form>

    <paper-button on-click="submitPosition">submit</paper-button>
  </template>

  <script>
    (function () {
      Polymer({
        is: 'my-elem',
        computePositionObj: function(){
          return {
            name: this.name
          };
        },
        properties: {
          position: {
            type: Object,
            computed: 'computePositionObj(name)'
          },
          name: {
            type: String,
            value: '',
          }
        },
        submitPosition: function() {
          this.$.ref.add(this.position);
        }
      });
    })();
  </script>
</dom-module>

答案 2 :(得分:0)

对象添加到某个位置。 (我保留了参考文献&#39;参考下一部分)

      var ref = this.$.sparks.add(
        {
          content: 'Hello there',
          by: 'john'
        });

仅向某个位置添加 有你的收藏

location="https://<app-name>.firebaseio.com/message/{{id}}"

如果您想在孩子时添加密钥,请执行

this.id = ref.key();
this.$.COLLECTIONID.query.ref().set(true);