mirror of
https://github.com/Mueller-Patrick/Betterzon.git
synced 2026-10-22 12:28:20 +00:00
BETTERZON-42: Refactoring components and creating product detail component
This commit is contained in:
1 parent
4f3a755f78
commit
ad1e758325
25 files changed
+72
-11
No files matched your search
@@ -4,10 +4,11 @@ import {NgModule} from '@angular/core';
|
||||
|
||||
import {AppComponent} from './app.component';
|
||||
import {AppRouting} from './app.routing';
|
||||
import {ProductListComponent} from './product-list/product-list.component';
|
||||
import { LandingpageComponent } from './landingpage/landingpage.component';
|
||||
import { ProductDetailPageComponent } from './product-detail-page/product-detail-page.component';
|
||||
import { FooterComponent } from './footer/footer.component';
|
||||
import {ProductListComponent} from './components/product-list/product-list.component';
|
||||
import { LandingpageComponent } from './components/landingpage/landingpage.component';
|
||||
import { ProductDetailPageComponent } from './components/product-detail-page/product-detail-page.component';
|
||||
import { FooterComponent } from './components/footer/footer.component';
|
||||
import { ProductDetailsComponent } from './components/product-details/product-details.component';
|
||||
|
||||
@NgModule({
|
||||
declarations: [
|
||||
@@ -15,7 +16,8 @@ import { FooterComponent } from './footer/footer.component';
|
||||
ProductListComponent,
|
||||
LandingpageComponent,
|
||||
ProductDetailPageComponent,
|
||||
FooterComponent
|
||||
FooterComponent,
|
||||
ProductDetailsComponent
|
||||
],
|
||||
imports: [
|
||||
BrowserModule,
|
||||
|
||||
@@ -2,9 +2,9 @@ import {NgModule} from '@angular/core';
|
||||
import {CommonModule} from '@angular/common';
|
||||
import {RouterModule, Routes} from '@angular/router';
|
||||
import {AppComponent} from './app.component';
|
||||
import {ProductListComponent} from './product-list/product-list.component';
|
||||
import {LandingpageComponent} from './landingpage/landingpage.component';
|
||||
import {ProductDetailPageComponent} from './product-detail-page/product-detail-page.component';
|
||||
import {ProductListComponent} from './components/product-list/product-list.component';
|
||||
import {LandingpageComponent} from './components/landingpage/landingpage.component';
|
||||
import {ProductDetailPageComponent} from './components/product-detail-page/product-detail-page.component';
|
||||
|
||||
const routes: Routes = [
|
||||
{path: '', component: LandingpageComponent},
|
||||
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Whitespace-only changes.
@@ -0,0 +1 @@
|
||||
<p>product-details works!</p>
|
||||
@@ -0,0 +1,25 @@
|
||||
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
|
||||
import { ProductDetailsComponent } from './product-details.component';
|
||||
|
||||
describe('ProductDetailsComponent', () => {
|
||||
let component: ProductDetailsComponent;
|
||||
let fixture: ComponentFixture<ProductDetailsComponent>;
|
||||
|
||||
beforeEach(async () => {
|
||||
await TestBed.configureTestingModule({
|
||||
declarations: [ ProductDetailsComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(ProductDetailsComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,15 @@
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-product-details',
|
||||
templateUrl: './product-details.component.html',
|
||||
styleUrls: ['./product-details.component.css']
|
||||
})
|
||||
export class ProductDetailsComponent implements OnInit {
|
||||
|
||||
constructor() { }
|
||||
|
||||
ngOnInit(): void {
|
||||
}
|
||||
|
||||
}
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
+2
-2
@@ -1,6 +1,6 @@
|
||||
import {Component, Input, OnInit} from '@angular/core';
|
||||
import {ApiService} from '../api.service';
|
||||
import {Product} from '../models/product';
|
||||
import {ApiService} from '../../services/api.service';
|
||||
import {Product} from '../../models/product';
|
||||
import {Router} from '@angular/router';
|
||||
|
||||
@Component({
|
||||
@@ -0,0 +1,7 @@
|
||||
export interface Price {
|
||||
price_id: number;
|
||||
product_id: number;
|
||||
vendor_id: number;
|
||||
price_in_cents: number;
|
||||
timestamp: Date;
|
||||
}
|
||||
File renamed without changes.
@@ -1,7 +1,8 @@
|
||||
import {Injectable} from '@angular/core';
|
||||
import {HttpClient, HttpHeaders} from '@angular/common/http';
|
||||
import process from 'process';
|
||||
import {Product} from './models/product';
|
||||
import {Product} from '../models/product';
|
||||
import {Price} from '../models/price';
|
||||
import {Observable, of} from 'rxjs';
|
||||
|
||||
@Injectable({
|
||||
@@ -24,4 +25,14 @@ export class ApiService {
|
||||
process.stderr.write(`ERROR received from ${this.apiUrl}: ${exception}\n`);
|
||||
}
|
||||
}
|
||||
|
||||
getPrices(): Observable<Price[]> {
|
||||
try {
|
||||
const prices = this.http.get<Price[]>((this.apiUrl + '/prices'));
|
||||
console.log(prices);
|
||||
return prices;
|
||||
} catch (exception) {
|
||||
process.stderr.write(`ERROR received from ${this.apiUrl}: ${exception}\n`);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user