Проблема с сообщениями FCM - PullRequest
2 голосов
/ 16 апреля 2020

Я пытаюсь сгенерировать токен из FCM, перейдя по этой ссылке . Я сталкиваюсь с проблемой в messaging.service. Я не смог реализовать angularFireMessaging.messaging, его ошибка в ключевом слове обмена сообщениями как

Свойство «обмен сообщениями» не существует для типа «AngularFireMessaging»

Код

import { Injectable } from '@angular/core';
import { AngularFireMessaging } from '@angular/fire/messaging';
import { BehaviorSubject } from 'rxjs'
@Injectable()
export class MessagingService {
  currentMessage = new BehaviorSubject(null);
  constructor(private angularFireMessaging: AngularFireMessaging) {
    this.angularFireMessaging.messaging.subscribe(  //issue here in messaging
      (_messaging) => {
        _messaging.onMessage = _messaging.onMessage.bind(_messaging);
        _messaging.onTokenRefresh = _messaging.onTokenRefresh.bind(_messaging);
      }
    )
  }
  requestPermission() {
    this.angularFireMessaging.requestToken.subscribe(
      (token) => {
        console.log(token);
      },
      (err) => {
        console.error('Unable to get permission to notify.', err);
      }
    );
  }
  receiveMessage() {
    this.angularFireMessaging.messages.subscribe(
      (payload) => {
        console.log("new message received. ", payload);
        this.currentMessage.next(payload);
      })
  }
}

Где я иду не так, пожалуйста, помогите мне

1 Ответ

0 голосов
/ 23 апреля 2020

После небольшого тестирования, из Stackblitz demo , который вы можете найти из https://github.com/angular/angularfire#resources

Если вы go к зависимостям:

Вы обнаружите, что они использовали @ angular / fire@5.1.1

Если вы следуете любому учебнику, который говорит, что вам нужно сделать что-то вроде:

npm install firebase @angular/fire --save
npm install firebase --save

Вы можете выполнить следующие действия, используя:

npm uninstall @angular/fire
npm i @angular/fire@5.1.1 --save

, которые полностью удаляют любую существующую установку @ angular / fire и устанавливают @ angular / fire@5.1.1 и устраните ошибку

Свойство 'message' не существует для типа 'AngularFireMessaging'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...