В настоящее время я пытаюсь создать SPA с использованием Angular 9. Я создал модуль под названием products с этим маршрутом localhost: 4200 / products, а для поиска указанного продукта я использую этот маршрут http: // localhost: 4200 / products / (number_id_product)
Я думал реализовать этот компонент каждый раз, когда мне нужно увидеть продукт. Моя проблема заключается в том, что когда я перехожу к другому продукту со страницы текущего продукта, используя ссылку с [routerlink], (http: // localhost: 4200 / products / 1 на http: // localhost: 4200 / products / 2) URL изменяется но страница содержимого не меняется и сохраняет ту же информацию о последнем продукте.
Я не знаю, что происходит с перенаправлением [routerlink]
мой код .ts
import { Component, OnInit } from '@angular/core';
import { Product } from 'src/app/shared/models/product';
import { ActivatedRoute } from '@angular/router';
import { ProductsService } from 'src/app/shared/services/products.service';
@Component({
selector: 'ec-product-description',
templateUrl: './product-description.component.html',
styleUrls: ['./product-description.component.css']
})
export class ProductDescriptionComponent implements OnInit {
id: string;
product: Product
constructor(private route: ActivatedRoute, private service: ProductsService) { }
ngOnInit(): void {
this.id= this.route.snapshot.paramMap.get('id')
//get products/id
this.service.getProduct(this.id)
.subscribe(prod=>{
console.log(`Prod ↓ `)
console.log(prod)
this.product=prod
})
}
}
мой код html
<div class="container-product">
<h1>{{product.title}}</h1>
<img mat-card-image [src]="product.thumbImage">
<span class="product-descrp">{{product.description}}</span>
<span [routerLink]="['','products','another_id_product']">See another product!</span>
</div>