Угловая маршрутизация для товарных категорий - PullRequest
0 голосов
/ 06 мая 2018

Привет! Я создаю страницу магазина в угловой версии 4, и у меня возникла проблема с угловой маршрутизацией, когда при нажатии пользователем категории продукта веб-сайт должен перенаправить его на страницу магазина.

На моей домашней странице. Я дал две ссылки в товарных категориях -

<h2>Product Categories</h2>
<a [routerLink]="['/shop', id]>Jeans</a>
<a [routerLink]="['/shop', id]>Shirts</a>

Для компонента страницы магазина я создал сервис для извлечения данных из файла JSON

export const PRODUCTS: Products[] = [
{
    id: 1,
    productCat:'Jeans',
    product: [
        {
            prodId: 1a,
            productName: 'Trendy Jeans',
        },
        {
            prodId: 2a,
            productName: 'Trendy Jeans second product',
        },
    ],
},
{
    id: 2,
    productCat:'Shirts',
    product: [
        {
            prodId: 1b,
            productName: 'Trendy Shirts',
        },
    ],
},
]

Таким образом, когда пользователь нажимает на джинсы, он должен показывать только джинсовые изделия, а когда пользователь нажимает на рубашки, он должен показывать только продукты рубашки.

Вот мой модуль маршрутизации приложений -

приложение-routing.module.ts

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
import { routes } from './routes';

@NgModule({
  imports: [
    CommonModule,
    RouterModule.forRoot(routes)
  ],
  exports: [ RouterModule ],
  declarations: []
})
export class AppRoutingModule { }

файл rout.ts -

export const routes:Routes = [
    {path: 'home', component: HomeComponent},
    {path: 'shop/:id', component: ShopComponent},
    {path: '', redirectTo: '/home', pathMatch: 'full'}
];

Таким образом, когда пользователь нажимает на джинсы, он должен показывать только джинсовые изделия, а когда пользователь нажимает на рубашки, он должен показывать только продукты рубашки. Можем ли мы отфильтровать данные для того же компонента?

Ответы [ 2 ]

0 голосов
/ 06 мая 2018

Чтобы выполнить маршрутизацию в angularjs, вам нужно использовать атрибут routerLink в тегах привязки и тег router-outlet на домашней странице для отображения ответа маршрутизатора Link.

<h2>Product Categories</h2>
<a routerLink="shop/:id">Jeans</a>
<a routerLink="shop/:id">Shirts</a>

В appcomponent.html используйте тег ниже, чтобы отобразить содержимое компонента Shop.html.

<router-outlet>
0 голосов
/ 06 мая 2018

Вы должны использовать угловой routerlinklink. href не будет работать в угловых

<a [routerLink]="['/shop', id]"> Jeans</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...