问题标签 [angularfire2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
systemjs - JSPM Map For Dependencies 未正确解析路径
我对 JSPM 感到非常沮丧,这只是众多问题中的最新问题。
我已经angularfire2
通过 JSPM 安装了 - sudo jspm install npm:angularfire2
(是的,SUDO。没有 SUDO 就无法工作!!)它应该已经安装了@angular
依赖项。生成的包 json 看起来像这样——
生成的配置看起来像这样 -
因此,当我刷新应用程序的页面时,我看到它angularfire2.js
正确导入,然后尝试导入@angular/platform-browser-dynamic.js
. 但是它试图导入的地址是-http://localhost:8000/@angular/platform-browser-dynamic.js
这是错误的路径!我想这是因为我的第一行app.ts
(也是应用程序的起点)有这条线- import { bootstrap } from '@angular/platform-browser-dynamic';
. 但是为什么 JSPM 不能正确映射呢?我需要单独安装这些软件包吗?如果是这样-为什么会有包依赖之类的东西?
预期:解析此导入时,/jspm_packages/npm/**
应解析地址。
得到:SystemJS 尝试从 web root 加载包/
。
unit-testing - 如何在单元测试中模拟 AngularFire 2 服务?
我正在尝试使用 AngularFire 2 auth 为示例 Angular 2 应用程序设置单元测试,该组件非常简单:
我所做的只是在 AngularFire 中封装login
andlogout
方法,所以我正在考虑使用模拟来检查方法是否被调用,但我不确定从哪里开始,我尝试在我的规范文件中执行以下操作:
但是我不确定如何模拟login
andlogout
方法,因为它们是auth
属性的一部分,有没有办法模拟auth
以及返回login
和logout
方法?
firebase - firebase 函数 af.database.object 无法返回变量中的每个对象
我想从指定用户的 firebase 获取用户配置文件数据。例如,我想返回 UID HBJKD12345 的用户的 displayName 和电子邮件地址
我使用这个功能:
但是console.log(this.userProfile.email)
我得到一个“未定义”
在我看来,我必须使用:{{(userProfile | async )?.email}}
通过这一行,我可以显示用户的电子邮件地址,但为什么我在尝试使用 console.log 时得到“未定义”?
angularjs - $firebaseAuth 与 AngularFire 2.0.1 和 Firebase 3.0.5
我正在尝试升级到 Firebase 3 和 AngularFire 2。
我已经initializeApp
在应用程序的配置阶段运行:
let firebaseConfig = {
apiKey: config.fbSecret,
authDomain: config.firebaseAuthDomain,
databaseURL: config.firebaseBase
},
fbApp = firebase.initializeApp(firebaseConfig);
let baseRef = firebase.database().ref()
然后“提供”baseRef 以注入其他模块(就像我在旧版本中所做的那样):
$provide.value('FirebaseBase', baseRef);
这样我就可以注入FirebaseBase
服务模块并使用例如FirebaseBase.child('profile')
.
这不会产生任何错误,但是当应用程序运行时我在控制台中收到此错误:
angular.js:4576 Uncaught Error: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp().
没有迹象表明错误来自哪里,但我在这个run
阶段有一些身份验证代码:
$firebaseAuth.$onAuthStateChanged(..
我猜它可能来自那里。我试图遵循迁移指南,但似乎没有任何现实生活中的例子,而且我不清楚新的 AngularFire 如何与firebase.initializeApp
.
任何地方都有示例应用程序吗?我错过了什么吗?
angular - Angular2 rc3 Angularfire3 找不到 Promise
我正在尝试将 Angularfire2 与 Angular2 启动器一起使用,但出现以下错误:
我试过这个: typings install dt~es6-promise --global --save 但我仍然得到:node_modules/angularfire2/firebase3.d.ts(33,50): error TS2304: Cannot find name 'Promise'.
这就是我所做的:
1)克隆angular2启动器
2)npm安装
3)npm install angularfire2 firebase --save
4)typings install dt~es6-promise --global --save
5)添加“文件”:[“node_modules/angularfire2/firebase3.d.ts”]到tsconfig.json
我还通过 npm install es-6promise 添加了 es-6 promise,没有运气。当我将target改为es6时,代码不再翻译成js,但是错误消失了。如果有人能指出我正确的方向,我会很高兴。
typescript - 使用 angularfire2 加载数据后,Angular2 停止加载微调器
我想向这个组件添加一个加载微调器,并且我正在尝试将代码拆分为一个服务,因此我可以添加一个.subscribe
方法并在加载完成时停止微调器,就像在这个工作示例中一样:
工作示例组件
工作示例服务
这是我要拆分的组件:
更新#1 给出答案
试一试答案,以更好地理解问题。
所以我创建了 UserService,它将使用 angularfire2 显示用户,现在我认为女巫开始成为主要问题,我的意思是items: FirebaseListObservable<any>;
用户服务
在 UsersComponent 我设法得到这样的用户列表:
但现在我需要一种在加载完成后停止微调器的方法,我知道的唯一方法是
.subscribe()
:
,但这不起作用,因为items
.
除了 有没有其他方法可以做到这一点.subscribe()
?或者我可以将类型items
转换为其他类型吗?
ionic-framework - 如何访问多个 AngularFire2 可观察对象项
在我的 Ionic2 应用程序中,我试图通过 AngularFire2 提供的 FirebaseObjectObservable 访问 Firebase 数据库中的多个项目
我的 Firebase 数据库是
我的 Observable 对象是在这里创建的
问题是我无法在我的应用程序中显示多个对象项目
应用程序中仅显示列表中的最后一项。
如何返回 Observable 对象的多个异步项?
firebase - Firebase 使用安全规则自动推送和设置多个节点
我已经阅读了Firebase 跨多个节点的数据一致性,多更新的东西按预期工作,但是我不知道如何执行以下操作:
假设我有 2 个集合:answers
和posts
. 现在我想写一个帖子的答案并增加帖子对象上的答案计数器,以保持集合之间的数据一致。所以实际的对象看起来类似于这些:
邮政
回答
正如我上面所说,该链接回答了如何进行合并更新,但是,我如何确定该answers
属性只会增加/减少(在删除的情况下)1?我到目前为止是这样的:
显然这会起作用(我假设,没有尝试过),但这仍然可以让我创建一个新的答案并减少计数器。我该如何克服这个问题?
typescript - angularfire 从firebase获取对象的长度
我被这个困住了。我在 ionic 2 中使用 angularfire 2,我需要获取我得到的对象的长度:
如何知道对象是否存在或是否为 null ?
谢谢。