diff --git a/src/app/components/basicComponent/basic.component.html b/src/app/components/basicComponent/basic.component.html
index 3468fb29..60b4ff04 100644
--- a/src/app/components/basicComponent/basic.component.html
+++ b/src/app/components/basicComponent/basic.component.html
@@ -2,7 +2,17 @@
- Flex item
-
+
+ -
+ {{item.IComponentModel.Id}}
+
+ -
+ {{item.IComponentModel.Name}}
+
+ -
+ {{item.IComponentModel.Url}}
+
+
+
\ No newline at end of file
diff --git a/src/app/components/basicComponent/basic.component.ts b/src/app/components/basicComponent/basic.component.ts
index 7c6e75b9..9a94d8f3 100644
--- a/src/app/components/basicComponent/basic.component.ts
+++ b/src/app/components/basicComponent/basic.component.ts
@@ -1,12 +1,12 @@
import { Component } from '@angular/core';
-
+import { FormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common'; // Import CommonModule for *ngFor
import { SharedService } from '../../shared.service';
@Component({
selector: 'basic-component',
standalone: true,
- imports: [CommonModule],
+ imports: [CommonModule, FormsModule],
templateUrl: './basic.component.html',
styleUrls: ['./basic.component.css'],
})
diff --git a/src/app/components/header/header.component.html b/src/app/components/header/header.component.html
index acfb5a7e..5672d28d 100644
--- a/src/app/components/header/header.component.html
+++ b/src/app/components/header/header.component.html
@@ -1,18 +1,9 @@
diff --git a/src/app/components/header/header.component.ts b/src/app/components/header/header.component.ts
index 214c207e..dcfe6f85 100644
--- a/src/app/components/header/header.component.ts
+++ b/src/app/components/header/header.component.ts
@@ -1,18 +1,25 @@
import { Component } from "@angular/core";
import { SharedService } from '../../shared.service';
+import { IComponentModel } from '../../interfaces/IComponent.Model'
+import { FormsModule } from '@angular/forms';
@Component({
selector: 'header-component',
standalone: true,
templateUrl: './header.component.html',
styleUrl: './header.component.css',
+ imports: [FormsModule]
})
export class HeaderComponent{
+ IComponentModel: IComponentModel = {
+ Id:0,
+ Name:'test',
+ Url:'localhost'
+ }
+ constructor(public sharedService: SharedService){}
- constructor(public sharedService: SharedService) {}
-
- AddComponent() {
- this.sharedService.AddItem();
+ AddComponent(IComponentModel: IComponentModel) {
+ this.sharedService.AddComponent(IComponentModel);
}
}
\ No newline at end of file
diff --git a/src/app/interfaces/IComponent.Model.ts b/src/app/interfaces/IComponent.Model.ts
new file mode 100644
index 00000000..3c8ea7f9
--- /dev/null
+++ b/src/app/interfaces/IComponent.Model.ts
@@ -0,0 +1,5 @@
+export interface IComponentModel{
+ Id:number;
+ Name:string;
+ Url:string;
+}
\ No newline at end of file
diff --git a/src/app/shared.service.ts b/src/app/shared.service.ts
index 044fe377..bfa8d653 100644
--- a/src/app/shared.service.ts
+++ b/src/app/shared.service.ts
@@ -1,11 +1,12 @@
import { Injectable } from '@angular/core';
+import { IComponentModel } from './interfaces/IComponent.Model';
@Injectable({
providedIn: 'root'
})
export class SharedService {
- flexItems: { id: number }[] = [];
+ flexItems: { IComponentModel: IComponentModel }[] = [];
Remove(id: number) {
let index = this.GetId(id);
@@ -14,18 +15,18 @@ export class SharedService {
}
}
- AddItem() {
+ AddComponent(IComponentModel: IComponentModel) {
const newId = Math.floor(Math.random() * 100) + 1;
let index = this.GetId(newId);
- console.log(index);
if(index === -1){
- this.flexItems.push({ id: newId });
+ IComponentModel.Id = newId;
+ this.flexItems.push({ IComponentModel: IComponentModel });
}
else
- this.AddItem();
+ this.AddComponent(IComponentModel);
}
GetId(id: number): number{
- return this.flexItems.findIndex(item => item.id == id);
+ return this.flexItems.findIndex(item => item.IComponentModel.Id == id);
}
}
\ No newline at end of file