相关疑难解决方法(0)

无法在Angular2服务中找出正确的EventEmitter或Observable语法

我很难找到在Angular2服务中使用observables的示例/指南的方式.有一些用于与EventEmitter绑定的html模板的东西,但这似乎不适合服务.

其中一个重要的驱动主题是远离Angular2中的Promise,但我似乎无法使新语法正确.

我在做什么

  • 我有一个可以注入其他服务或组件的FirebaseAuth服务.
  • 我有一个函数对firebase执行异步调用,在我的示例中创建用户
  • 我想返回一个Observable(替换promise),其他服务可以用来做其他事情,比如在解决这个问题时创建一个配置文件

我很好,如果承诺是这个例子的最佳解决方案,但我想弄清楚Observable Way是什么.

我的服务:

/*DS Work on firebase Auth */
import {Injectable} from 'angular2/angular2';

@Injectable()
export class FirebaseAuth {
  ref = new Firebase('https://myfirebase.firebaseio.com');
  //check if user is logged in
  getAuth(): any {
    return this.ref.getAuth();
  }

  //register a new user
  createUser(user: any): Promise<any> {
    return new Promise((resolve, reject) => {
      this.ref.createUser(user, function(error, userData) {
        if (error) {
          reject(error);
          console.log('Error creating user:", error');
        } else {
          resolve(userData);
          console.log('Successfully created …
Run Code Online (Sandbox Code Playgroud)

service observable eventemitter angular

18
推荐指数
1
解决办法
8682
查看次数

标签 统计

angular ×1

eventemitter ×1

observable ×1

service ×1