我正在尝试创建新的 GeoPoint
使用 AngularFirestore
但我不断收到一条错误消息,指出该方法不可用。在不导入整个 firebase
的情况下如何做到这一点npm 模块除了 AngularFire
?
import { Component, OnInit } from "@angular/core";
import {AngularFirestore, AngularFirestoreCollection} from "angularfire2/firestore";
@Component({
selector: "app-firebase-menu-bar",
templateUrl: "./firebase-menu-bar.component.html",
styleUrls: ["./firebase-menu-bar.component.css"]
})
export class FirebaseMenuBarComponent {
private itemsCollection: AngularFirestoreCollection<any>;
private AngularFirestoreCollection;
private draftCollection;
private productionCollection;
constructor(private db: AngularFirestore) {
// this.production = db.collection('/production').snapshotChanges();
this.db.firestore.GeoPoint(40, 100);
}
}
最佳答案
您必须使用 native firebase/firestore 模块,而不是 angularfire 模块。
您不应该害怕导入 firebase(通过 AngularFire 存储库中推荐的“firebase/app”),因为 angularfire 只是它的一个包装器。
以下是创建 Geopoint 的 Firestore API 引用:https://firebase.google.com/docs/reference/js/firebase.firestore.GeoPoint
进口:
import {AngularFirestore} from 'angularfire2/firestore'
import * as firebase from 'firebase/app'
Geopoint 创建和保存:
const locationData = new firebase.firestore.GeoPoint(40, 100)
this.db.collection('foo').doc('whateverId').udpate({location: locationData})
关于angular - 如何从 angularfire2 创建 GeoPoint?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47520790/