【问题标题】:Nativescript Firebase plugin - “cannot read property of null” after upgrade to NS 3.4.0Nativescript Firebase 插件 - 升级到 NS 3.4.0 后“无法读取 null 的属性”
【发布时间】:2017-12-24 12:22:02
【问题描述】:

我的 angular - Nativescript 项目使用 Nativescript-Firebase-Plugin。它在 Nativescript 3.3 中运行良好

我将我的项目升级到 Nativescript 3.4。升级项目后,我面临所有 firebase 查询的主要问题。

**JS: Error in firebase.query: TypeError: Cannot read property 'child' of null**
    JS: NO QUESTIONS FOR THIS USER
    JS: ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'length' of undefined
    JS: TypeError: Cannot read property 'length' of undefined
    JS:     at file:///data/data/org.nativescript.qbank/files/app/feed/alphaCreate.component.js:55:23
    JS:     at SafeSubscriber.schedulerFn [as _next] (file:///data/data/org.nativescript.qbank/files/app/tns_modules/@angular/core/bundles/core.umd.js:3870:36)
    JS:     at SafeSubscriber.__tryOrUnsub (file:///data/data/org.nativescript.qbank/files/app/tns_modules/rxjs/Subscriber.js:238:16)
    JS:     at SafeSubscriber.next (file:///data/data/org.nativescript.qbank/files/app/tns_modules/rxjs/Subscriber.js:185:22)
    JS:     at Subscriber._next (file:///data/data/org.nativescript.qbank/files/app/tns_modules/rxjs/Subscriber.js:125:26)
    JS:     at Subscriber.next (file:///data/data/org.nativescript.qbank/files/app/tns_modules/rxjs/Subscriber.js:89:18)
    JS:     at EventEmitter.Subject.next (file:///data/data/org.nativescript.qbank/files/app/tns_modules/rxjs/Subject.js:55:25)
    JS:     at EventEmitter.emit (file:///data/data/org.nativescript.qbank/files/app/tns_modules/@angular/core/bundles/core.umd.js:3844:76)
    JS:     at file:///data/data/org.nativescript.qbank/files/app/services/my-questions.service.js:51:42
    JS:     at ZoneDelegate.invoke (file:///data/data/org.nativescript.qbank/files/app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:365:26)
    JS:     at Object.onInvoke (file:///data/data/org.nativescript.qbank/files/app/tns_modules/@angular/core/bundles/core.umd.js:4156:37)
    JS:     at ZoneDelegate.invoke (file:///data/data/org.nativescript.qbank/files/app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:364:32)
    JS:     at Zone.run (file:///data/data/org.nativescript.qbank/files/app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:125:43)
    JS:     at file:///data/data/org.nativescript.qbank/files/app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:760:57
    JS:     at ZoneDelegate.invokeTask (file:///data/data/org.nativescript.qbank/files/app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:398:31)

我试图解决它 一种。升级本机脚本 firebase 插件:5.0.5 湾。升级项目的所有依赖项

但问题仍然存在。这是一个很大的障碍,请建议我可以做些什么来解决这个问题。

我的包json如下:

{
  "android": {
    "markingMode": "none"
  },
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "NativeScript Application",
  "repository": "<fill-your-repository-here>",
  "nativescript": {
    "id": "org.nativescript.qbank",
    "tns-ios": {
      "version": "3.4.0"
    },
    "tns-android": {
      "version": "3.4.0"
    }
  },
  "dependencies": {
    "@angular/animations": "~5.0.0",
    "@angular/common": "~5.0.0",
    "@angular/compiler": "~5.0.0",
    "@angular/core": "~5.0.0",
    "@angular/forms": "~5.0.0",
    "@angular/http": "~5.0.0",
    "@angular/platform-browser": "~5.0.0",
    "@angular/platform-browser-dynamic": "~5.0.0",
    "@angular/router": "~5.0.0",
    "nativescript-algolia": "0.0.4",
    "nativescript-angular": "~5.0.0",
    "nativescript-camera": "^3.1.4",
    "nativescript-email": "^1.5.1",
    "nativescript-fancyalert": "^1.1.2",
    "nativescript-filter-select": "^1.2.1",
    "nativescript-geolocation": "^3.0.0",
    "nativescript-gif": "^1.0.9",
    "nativescript-imagepicker": "^4.0.1",
    "nativescript-iqkeyboardmanager": "^1.1.0",
    "nativescript-loading-indicator": "^2.3.2",
    "nativescript-plugin-firebase": "^5.0.5",
    "nativescript-pro-ui": "^3.3.0",
    "nativescript-theme-core": "~1.0.4",
    "nativescript-toast": "^1.4.5",
    "nativescript-web-image-cache": "^4.2.2",
    "reflect-metadata": "~0.1.8",
    "rxjs": "^5.5.0",
    "tns-core-modules": "^3.4.0"
  },
  "devDependencies": {
    "babel-traverse": "6.26.0",
    "babel-types": "6.26.0",
    "babylon": "6.18.0",
    "codelyzer": "~4.0.2",
    "es6-promise-loader": "^1.0.2",
    "lazy": "1.0.11",
    "nativescript-dev-typescript": "^0.6.0",
    "tslint": "^5.1.0",
    "typescript": "~2.4.2",
    "zone.js": "^0.8.4"
  }
}

【问题讨论】:

    标签: firebase plugins angular2-nativescript


    【解决方案1】:

    问题是 firebase 没有初始化。我通过将 firebase init 设置为超时解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-06
      • 2019-02-05
      • 2017-02-04
      • 1970-01-01
      • 2018-11-06
      • 1970-01-01
      • 2018-07-30
      • 1970-01-01
      相关资源
      最近更新 更多