使用Polymerfire保存文档的问题

时间:2017-04-17 10:03:43

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

我试图将数据保存到firebase数据库但总是遇到TypeError。似乎无法找到问题所在。这是我的<template>代码:

<firebase-auth
    id="auth"
    app-name="notes"
    provider="google"
    signed-in="{{signedIn}}"
    user="{{user}}">
</firebase-auth>

<firebase-document
    id="document"
    app-name="notes"
    path="[[editableNoteId]]"
    data="{{editableNote}}">
</firebase-document>

<na-editor
    id="editor"
    note="{{editableNote}}"
    on-close="commitChange">
</na-editor>

脚本:

<script>
  Polymer({
    is: 'note-app',

    behaviors: [Polymer.NoteAppBehavior],

    signIn: function() {
      this.$.auth.signInWithPopup();
    },

    get notesPath() {
      return '/notes/' + this.user.uid;
    },

    toEditableId: function(noteId) {
      return this.notesPath + '/' + noteId;
    }
  });
</script>

这是错误:

TypeError: this.$.document.save is not a function. (In 'this.$.document.save(this.notesPath)', 'this.$.document.save' is undefined)

注意:app-name和firebase-app已正确定义。

2 个答案:

答案 0 :(得分:3)

在版本0.11.0中,save()方法已重命名为saveValue(),以保持与某些JS编译器和旧版浏览器的兼容性。有关详细信息,请参阅the release notes

docs现在也在显示更新,但在您查看时可能不会。

答案 1 :(得分:1)

将此添加到脚本修复了该问题。

save: function() {      
    this.$.document.saveValue();
},