2

我目前正在学习在我的项目中实现angularfire2。不幸的是我目前被卡住了。我建立了我的角项目喜欢这里描述angularfire2:云Firestore API未启用

https://github.com/angular/angularfire2/blob/master/docs/install-and-setup.md

我还建立了一个数据库,火力与规则集

{ 
    "rules": { 
    ".read": "true", 
    ".write": "true" 
    } 
} 

但是,当我尝试在我的控制台运行应用程序在浏览器给我下面的错误

ERROR Error: The Cloud Firestore API is not enabled for the project

现在我找到了一种方法来这里启用API

https://console.cloud.google.com/apis/library/firestore.googleapis.com/?project=projectname

离开我现在的错误

ERROR Error: Missing or insufficient permissions

我现在的问题是,我可以设置API密钥(也也得到了来自我的火力控制台不同API密钥?)和OAuths,但我不知道如何实现这些是我的代码。只需简单地生成API密钥并在environment.firebase配置中使用该密钥即可。如果有人知道任何事情,会很棒。我会继续尝试,并让你知道我是否也可以使用它。

+0

如果”下拉重新使用'AngularFireDatabase',从'app.module.ts'的'angularfire2/database'中导入'AngularFireDatabaseModule'。 – Edric

回答

0

感谢埃德里克我能解决它。他是对的。我的错误是,我试图使用AngularFirestore而不是AngularFireDatabase和AngularFireDatabaseModule。我输入这些之后,它工作。

如果你有,我有同样的困难,基本上你的模块需要像这里所描述

No provider for AngularFireDatabase, AngularFireAuth

只有一件事,我不得不改变,是你不加AngularFireDatabase和AngularFireDatabaseModule导入,但提供者。那么,到底你的模块看起来像这样

import { BrowserModule } from '@angular/platform-browser'; 
import { NgModule } from '@angular/core'; 

import { AngularFireModule } from 'angularfire2'; 
import { AngularFireDatabaseModule, AngularFireDatabase } from 'angularfire2/database'; 
import { environment } from '../environments/environment'; 
import { AppComponent } from './app.component'; 


    @NgModule({ 
     declarations: [ 
     AppComponent 
     ], 
     imports: [ 
     BrowserModule, 
     AngularFireModule.initializeApp(environment.firebase), 

     ], 
     providers: [AngularFireDatabase, AngularFireDatabaseModule ], 
     bootstrap: [AppComponent] 
    }) 
    export class AppModule { } 

再次感谢,我希望这将帮助其他人也与建立FireDatabase

+0

你可以提供一些关于你遇到的问题的更多信息吗?然后我会研究它。 – Chris

1

我有同样的问题,我有固定的斗争它具有这样的:

转到:

https://console.firebase.google.com/u/1/project/**ProjectID**/database/firestore/rules

,改变规则:

service cloud.firestore { 
    match /databases/{database}/documents { 
    match /{document=**} { 
     allow read, write; 
    } 
    } 
} 
3

让别人知道它是在火力控制台:

选择项目,然后单击数据库和改变从“实时数据库”,以“云公司的FireStore”