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

View File

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

View File

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

View File

@@ -23,6 +23,12 @@ import { MyProfileComponent } from './header-popup/my-profile/my-profile.compone
styleUrls: ['./header.component.css'], styleUrls: ['./header.component.css'],
}) })
export class HeaderComponent implements OnInit, OnDestroy { 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; userIcon = faUser;
profileDropdownState: boolean = false; profileDropdownState: boolean = false;
@@ -30,6 +36,7 @@ export class HeaderComponent implements OnInit, OnDestroy {
signupPopupState: boolean = false; signupPopupState: boolean = false;
navSliderStatus: boolean = false; navSliderStatus: boolean = false;
userSliderStatus: boolean = false; userSliderStatus: boolean = false;
@ViewChild('profileBtn') @ViewChild('profileBtn')