diff --git a/apps/angular/projects/catalog/src/pages/product/product.component.html b/apps/angular/projects/catalog/src/pages/product/product.component.html index 7a7d2d7d..6ab694a3 100644 --- a/apps/angular/projects/catalog/src/pages/product/product.component.html +++ b/apps/angular/projects/catalog/src/pages/product/product.component.html @@ -1,5 +1,21 @@ - +
+
+
+
+
{{ 'AbpCatalog::Products' | abpLocalization }}
+
+
+ +
+
+
+
+ + + + + + + +
+
diff --git a/apps/angular/projects/catalog/src/pages/product/product.component.ts b/apps/angular/projects/catalog/src/pages/product/product.component.ts index 669f8ded..ed8a7337 100644 --- a/apps/angular/projects/catalog/src/pages/product/product.component.ts +++ b/apps/angular/projects/catalog/src/pages/product/product.component.ts @@ -1,14 +1,27 @@ +import { ListService } from '@abp/ng.core'; import { Component, OnInit } from '@angular/core'; -import { ProductService } from '@catalog/proxy/products'; -import { map } from 'rxjs/operators'; +import { ProductDto, ProductService } from '@catalog/proxy/products'; + @Component({ selector: 'lib-product', templateUrl: './product.component.html', styleUrls: ['./product.component.css'], + providers: [ListService], }) export class ProductComponent implements OnInit { - list$ = this.productService.getList().pipe(map(res => res.items)); - constructor(public readonly productService: ProductService) {} + items: ProductDto[] = []; + count = 0; + constructor(public readonly productService: ProductService, public readonly list: ListService) { + // TODO: this is an example of paging + this.list.maxResultCount = 2; + } + + ngOnInit(): void { + const productStreamCreator = query => this.productService.getListPaged(query); - ngOnInit(): void {} + this.list.hookToQuery(productStreamCreator).subscribe(response => { + this.items = response.items; + this.count = response.totalCount; + }); + } } diff --git a/apps/angular/projects/catalog/src/pages/product/product.module.ts b/apps/angular/projects/catalog/src/pages/product/product.module.ts index 2fc892ab..af8743e5 100644 --- a/apps/angular/projects/catalog/src/pages/product/product.module.ts +++ b/apps/angular/projects/catalog/src/pages/product/product.module.ts @@ -1,17 +1,12 @@ -import { NgModule } from '@angular/core'; +import { CoreModule } from '@abp/ng.core'; +import { ThemeSharedModule } from '@abp/ng.theme.shared'; import { CommonModule } from '@angular/common'; - +import { NgModule } from '@angular/core'; import { ProductRoutingModule } from './product-routing.module'; import { ProductComponent } from './product.component'; - @NgModule({ - declarations: [ - ProductComponent - ], - imports: [ - CommonModule, - ProductRoutingModule - ] + declarations: [ProductComponent], + imports: [CommonModule, ProductRoutingModule, ThemeSharedModule, CoreModule], }) -export class ProductModule { } +export class ProductModule {}