Implements More Automatic Routing Configuration

This commit is contained in:
2023-10-23 01:16:22 -03:00
parent a6279fed5a
commit e4e0dd495d
4 changed files with 19 additions and 15 deletions

View File

@@ -2,7 +2,7 @@
<div class="nav-links">
<ul>
<li
*ngFor="let nav of navLink; let i = index"
*ngFor="let page of pages; let i = index"
[@animateSliderItem]="{
value: itemStatus,
params: {
@@ -11,8 +11,8 @@
}
}"
>
<a [routerLink]="nav.link">
{{ nav.page }}
<a [routerLink]="page.route">
{{ page.name }}
</a>
</li>
</ul>
@@ -25,8 +25,8 @@
[@animateSliderItem]="{
value: itemStatus,
params: {
fadeInTime: 0.6 + (navLink.length + 1) / 20,
fadeOutTime: 0.6 - (navLink.length + 1) / 10
fadeInTime: 0.6 + (pages.length + 1) / 20,
fadeOutTime: 0.6 - (pages.length + 1) / 10
}
}"
#profile

View File

@@ -1,6 +1,7 @@
import {
Component,
EventEmitter,
Input,
OnDestroy,
OnInit,
Output,
@@ -23,12 +24,8 @@ export class NavSliderComponent
{
userIcon = faUser;
navLink = [
{ page: 'Home', link: '/home' },
{ page: 'Work', link: '/home' },
{ page: 'Contact', link: '/home' },
{ page: 'About', link: '/home' },
];
@Input()
pages!: { name: string; route: string }[];
loggedUser!: User | null;

View File

@@ -7,10 +7,9 @@
</div>
<div class="nav-links">
<ul class="link-container">
<li><a routerLink="/home">Home</a></li>
<li><a routerLink="/home">Work</a></li>
<li><a routerLink="/home">Contact</a></li>
<li><a routerLink="/home">About</a></li>
<li *ngFor="let page of pages">
<a [routerLink]="page.route">{{ page.name }}</a>
</li>
</ul>
</div>
@@ -64,6 +63,7 @@
<app-nav-slider
[state]="navSliderStatus"
(profileButtonClicked)="profileButtonClicked()"
[pages]="pages"
>
</app-nav-slider>
</app-header-slider>

View File

@@ -23,6 +23,12 @@ import { MyProfileComponent } from './header-popup/my-profile/my-profile.compone
styleUrls: ['./header.component.css'],
})
export class HeaderComponent implements OnInit, OnDestroy {
pages: { name: string; route: string }[] = [
{ name: 'Home', route: '/home' },
{ name: 'Projects', route: '/home' },
{ name: 'Contact', route: '/home' },
];
userIcon = faUser;
profileDropdownState: boolean = false;
@@ -30,6 +36,7 @@ export class HeaderComponent implements OnInit, OnDestroy {
signupPopupState: boolean = false;
navSliderStatus: boolean = false;
userSliderStatus: boolean = false;
@ViewChild('profileBtn')