с помощью Router перейдите к go к вновь созданному продукту в angular - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь перейти к вновь созданному продукту после нажатия кнопки «Отправить». Пока все работает нормально, но в моем файле .ts я хочу перенаправить, скажем, редактировать компонент этого продукта после его создания. Как я могу получить идентификатор вновь созданного компонента? Пока в моем ts у меня есть это, которое перенаправляет на панель управления, как только продукт создается, но я хочу перенаправить его для редактирования этого продукта

const newProduct = { ...product, price: +product.price };
      this.adminService.createProduct(newProduct).subscribe((response: any) => {
        this.router.navigate(['/dashboard/']);
        this.toastr.success('Product Created Successfully');
      });

1 Ответ

0 голосов
/ 20 июня 2020

Метод createProduct из adminService должен возвращать идентификатор нового продукта, или, точнее, он должен возвращать наблюдаемый объект, который генерирует этот новый идентификатор продукта. Что именно делает createProduct?

Ваш код будет работать с этой имитацией реализации createProduct:

  createProduct(newProduct): Observable<number> {
    return of(123456);
  }

Обработчик подписки получит значение 123456, присвоенное response, что позволит вам перемещаться соответственно.

...