小编Qua*_*ges的帖子

FirebaseError: [code=permission-denied]: 权限缺失或不足

我在服务中有一个简单的集合引用

    firebase.auth().onAuthStateChanged(user => {
      if (user) {
          this.itineraryCollection = firebase
            .firestore()
            .collection(`itinerary/${user.uid}/itineraryList`);
        }
      });
Run Code Online (Sandbox Code Playgroud)

我正在调用此服务 OnInit

  ngOnInit() {
    this.loggedInUser = firebase.auth().currentUser;
    this.dataSvc.getItineraries()
    .get()
    .then( itineraryListSnapshot => {
      this.itineraries = [];
      itineraryListSnapshot.forEach(snap => {
        this.itineraries.push({
          id: snap.id,
          activities: snap.data().activities,
          destination: snap.data().destination,
          startDate: snap.data().startDate,
          endDate: snap.data().endDate,
          tripDetails: snap.data().tripDetails,
          userId: snap.data().userId
        });
      });
    });

    // this.itineraries = this.dataSvc.getUserItinerary();
    console.log('logged in user add itin page', this.itineraries);
  }
Run Code Online (Sandbox Code Playgroud)

但是我在页面初始化时不断收到以下错误:

vendor.js:49548 ERROR Error: Uncaught (in promise): FirebaseError: [code=permission-denied]: Missing or insufficient permissions.
FirebaseError: Missing or insufficient …
Run Code Online (Sandbox Code Playgroud)

firebase typescript firebase-security google-cloud-firestore

9
推荐指数
3
解决办法
2万
查看次数

如何从打字稿中的数组中删除项目

我已经在这里多次看到这个答案,但它对我不起作用。我需要从数组中删除一个项目,但索引继续返回 -1。

  deleteItinerary(id: string) {
    this.dataSvc.removeItinerary(id);
    console.log('id', id);
    const index = this.itineraries.indexOf(id);
    console.log('array', this.itineraries);
    console.log('index', index);
  }
Run Code Online (Sandbox Code Playgroud)

我在这里看到了这个答案,我们应该使用 array.indexOf()。我正在做一个控制台日志来验证 id 是否正确并且它存在于数组中,但索引一直给我-1。

感谢您的帮助

typescript angular ionic4

-1
推荐指数
1
解决办法
4万
查看次数