Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Angular 2和Firebase SDK大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直试图让Angular2 quickstart应用程序与Firebase一起使用(参见此 repository).我安装了最新版本的Firebase,尝试使用SystemJS加载firebase(参见 systemjs.config.js)并尝试导入firebase并使用函数initializeApp(参见 app.component.ts).但是,我不断收到错误firebase.initializeApp不是浏览器控制台中的函数.我是否正确使用SystemJS来加载firebase.js?

注意:要复制错误,您应该只能执行npm install,然后执行npm start.

解决方法

一个变化:来自

import * as firebase from 'firebase';

import {firebasE} from 'firebase';

足以使您的示例与firebase 3.6一起使用.

但是,我说这是偶然的. firebase.js看起来不像一个模块,它不使用module.exports或amd define,它只是创建具有以下属性全局变量firebase:

INTERNAL: Object
Promise: Promise()
SDK_VERSION: "3.6.4"
User: (a,b,C)
__esModule: true
app: a(a)
apps: (...)
get apps: ()
auth: (C)
database: (C)
default: Object
initializeApp: (a,C)
messaging: (C)
storage: (C)
__proto__: Object

可能是__esModule的存在使得SystemJS将它包装在另一个对象中 – 如果你在调试器中查看import *的结果作为来自’firebase’的firebase它包含一个名为firebase的属性,它就是你需要的实际模块.

有趣的是,firebase.d.ts是以这样的方式编写的

import {firebasE} from 'firebase'; 

firebase.initializeApp(...);

有效,但看似平等

import * as firebase from 'firebase';

firebase.firebase.initializeApp(...);

没有检查.

大佬总结

以上是大佬教程为你收集整理的Angular 2和Firebase SDK全部内容,希望文章能够帮你解决Angular 2和Firebase SDK所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。