Подписка вызывается дваждыJavascript

Форум по Javascript
Ответить
Гость
 Подписка вызывается дважды

Сообщение Гость »


Я пытаюсь создать форму для отправки данных, но когда я подписываюсь на услугу, подписка выполняется дважды. Сначала с нулевыми данными, а затем с фактическими данными.

Component.ts

addBook() { this.errorMessage = ноль; this.fireService.getBook(this.bookDetails.isbn).subscribe(data => { console.log('подписка на вызов'); если (ноль != данные) { this.dbox.open(DialogBoxComponent, { data: { title: 'Error', content: 'Книга уже присутствует в библиотеке. Выберите «Редактировать книгу», чтобы изменить данные», кнопка: false } }); this.errorMessage = 'Книга уже присутствует в библиотеке. Выберите «Редактировать книгу», чтобы изменить детали'; } еще { this.fireService.addBook(this.bookDetails); this.dbox.open(DialogBoxComponent, { data: { title: «Успех», содержание: «Книга добавлена ​​в базу данных», кнопка: false } }); this.router.navigateByUrl('/add-book'); } }); } Service.ts

getBook(id) { console.log('вызывается firebase get book'); return this.db.doc(`/books/${id}`).valueChanges(); } Ниже приведено изображение консоли Chrome. Это показывает, что подписка вызывается дважды, но не служба Firebase.

Журналы консоли Chrome: изображение, нажмите для просмотра

журналы консоли Chrome

вызов книги Firebase Get Book подписаться позвонил подписаться позвонил Пожалуйста, помогите
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»