2017-04-01 53 views
0

我有类似于this的问题,除了我使用this的聚合物模板。Polymerfire - 无法读取未定义的属性'推'

我在声明<firebase-app>的页面以及使用<firebase-query>的页面中导入了所有聚合物引用参考文献。不工作。

我后来发现该模板使用了聚合火焰,其版本是v0.9.4而不是最新的v0.10.3。我试着卸载并重新安装新版本。没有改变。

有关更多的信息,这里的代码片段:

的src/APP-auth /中应用认证 - firebase.html

<link rel="import" href="../../bower_components/polymerfire/polymerfire.html"> 
<link rel="import" href="../../bower_components/polymerfire/firebase-app.html"> 
<link rel="import" href="../../bower_components/polymerfire/firebase-auth.html"> 
<link rel="import" href="../../bower_components/polymerfire/firebase-query.html"> 
... 
<firebase-app name="pwa-demo" api-key="abc" auth-domain="abc" database-url="abc"></firebase-app> 

<firebase-auth id="auth" app-name="pwa-demo" signed-in="{{_signedIn}}" user="{{_user}}"on-error="_onAuthError"></firebase-auth> 

的src/APP-页/ APP-页新的东西/应用程序页面,新stuff.html

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

<firebase-query id="stuffquery" app-name="pwa-demo" path="https://stackoverflow.com/users/[[user.uid]]/events" data="{{events}}"> </firebase-query> 
... 
_onFormSubmit: function() { 
    this.$.stuffquery.ref.push({ 
     title: this.$.piTitle.value 
    }); 
} 

还有什么我失踪?请帮忙。

编辑: 我发现了另外两个奇怪的东西,这可能会有帮助。首先,我无法同时检索数据和将数据从我的应用程序推送到应用程序。其次,当我试图在浏览器控制台中运行firebase.database()时,我得到"Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app)."

有人吗?

回答

2

经过几天的挫折,它的工作。显然。

TL; DR

我所做的是更新polymerfire并忽略任何火力元素的name属性。

说明

看着this,似乎在火力方法__computeApp初始化程序和名称是一个可选的变量,但如果提供,将在初始化时使用。忽略它,一切都应该没问题。在我的情况下,既适用<firebase-app><firebase-auth><firebase-query>(推送数据,因为我仍然停留在​​)

虽然它在我的情况下,它可能不一定是正确的解决方案。它可能不适用于你的情况。花了我好几天的时间才弄清楚,所以对于那些遇到类似问题的人来说,其中一个可能有所帮助:

  1. 检查firebase查询属性。请参阅this
  2. 尝试在声明<firebase-app>的相同html文件中导入polymerfire/polymerfire.html。参考this
  3. 更新聚合物燃烧。只需卸载并重新安装它即可解决此案(对于使用过时版本的聚合火焰)
  4. 忽略来自任何firebase元素的name属性。我知道我的<firebase-app>已成功初始化,当我在浏览器控制台中输入firebase.database()时,它不会再出现错误。

希望它有帮助。

相关问题