Firebase geoFire 设置错误 - 无法读取未定义的属性(读取“pieceNum_”)

问题描述 投票:0回答:1

我正在更新旧的 Ionic Angular 应用程序,并将我的 firebase 模块升级到 9.23.0,将 geofire 模块升级到 6.0.0。这样做时,当我使用 id 和坐标数组调用 geoFire 上的 set 函数时,出现以下错误。这在早期版本的 geoFire 中运行良好。

我找不到太多有关如何解决此问题的信息,除了建议回滚 firebase 和 geofire 模块的 stackoverflow 链接。由于其他一些错误,我无法回滚。

error =  TypeError: Cannot read properties of undefined (reading 'pieceNum_')
    at qt (geofire.min.js:590:980)
    at geofire.min.js:1299:1686
    at rt (geofire.min.js:361:2620)
    at Qr (geofire.min.js:1299:1645)
    at As (geofire.min.js:1397:3182)
    at e.set (geofire.min.js:1430:9558)

我的离子信息输出如下

Ionic:

   Ionic CLI                     : 7.1.1 (/Users/username/.nvm/versions/node/v20.2.0/lib/node_modules/@ionic/cli)
   Ionic Framework               : @ionic/angular 5.9.4
   @angular-devkit/build-angular : 13.3.11
   @angular-devkit/schematics    : 13.3.11
   @angular/cli                  : 13.3.11
   @ionic/angular-toolkit        : 6.1.0

Capacitor:

   Capacitor CLI      : 5.5.1
   @capacitor/android : 5.5.1
   @capacitor/core    : 5.5.1
   @capacitor/ios     : 5.5.1

Cordova:

   Cordova CLI       : 12.0.0 ([email protected])
   Cordova Platforms : android 9.1.0, browser 6.0.0, ios 6.2.0
   Cordova Plugins   : cordova-plugin-ionic-webview 4.2.1, (and 3 other plugins)

Utility:

   cordova-res                          : 0.15.4
   native-run (update available: 2.0.0) : 1.7.4

System:

   ios-sim : 8.0.2
   NodeJS  : v20.2.0 (/Users/username/.nvm/versions/node/v20.2.0/bin/node)
   npm     : 9.6.6
   OS      : macOS Unknown
   Xcode   : Xcode 15.0.1 Build version 15A507

感谢您提供有关如何解决此问题的指导。

angular firebase-realtime-database ionic5 geofire
1个回答
0
投票

此错误与 GeoFire 有关,GeoFire 是一个使用 Firebase 处理基于位置的数据的库。

当 GeoFire 在处理位置时遇到问题时,通常会发生此错误。

Please try below steps to resolve this issue-:

1. Check Initialization
  import * as GeoFire from 'geofire';
  const geoFire = new GeoFire(database.ref('your_geofire_location'));
  
2. Check Firebase Security Rules

3. Update Libraries
    npm install firebase@latest
    npm install geofire@latest
© www.soinside.com 2019 - 2024. All rights reserved.