diff --git a/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.html b/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.html
index 888def12dc..0442051148 100644
--- a/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.html
+++ b/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.html
@@ -7,7 +7,7 @@
-
@@ -37,7 +37,7 @@
Actions
-
Edit
+
Edit
Delete
@@ -97,6 +97,9 @@
Cancel
-
Save
+
+
+ Save
+
diff --git a/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.ts b/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.ts
index a58ff49694..bba94cb368 100644
--- a/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.ts
+++ b/samples/BookStore-Angular-MongoDb/angular/src/app/books/book-list/book-list.component.ts
@@ -54,13 +54,13 @@ export class BookListComponent implements OnInit {
});
}
- onAdd() {
+ createBook() {
this.selectedBook = {} as Books.Book;
this.buildForm();
this.isModalOpen = true;
}
- onEdit(id: string) {
+ editBook(id: string) {
this.booksService.getById(id).subscribe(book => {
this.selectedBook = book;
this.buildForm();
diff --git a/samples/BookStore-Angular-MongoDb/angular/src/app/books/shared/books.service.ts b/samples/BookStore-Angular-MongoDb/angular/src/app/books/shared/books.service.ts
index 19e73a49f7..3e92e68abc 100644
--- a/samples/BookStore-Angular-MongoDb/angular/src/app/books/shared/books.service.ts
+++ b/samples/BookStore-Angular-MongoDb/angular/src/app/books/shared/books.service.ts
@@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
-import { RestService, Rest } from '@abp/ng.core';
+import { RestService } from '@abp/ng.core';
import { Books } from '../../store/models';
import { Observable } from 'rxjs';
@@ -7,52 +7,42 @@ import { Observable } from 'rxjs';
providedIn: 'root',
})
export class BooksService {
- constructor(private rest: RestService) {}
+ constructor(private restService: RestService) {}
get(): Observable
{
- const request: Rest.Request = {
+ return this.restService.request({
method: 'GET',
url: '/api/app/book',
- };
-
- return this.rest.request(request);
+ });
}
- create(body: Books.CreateUpdateBookInput): Observable {
- const request: Rest.Request = {
+ create(createBookInput: Books.CreateUpdateBookInput): Observable {
+ return this.restService.request({
method: 'POST',
url: '/api/app/book',
- body,
- };
-
- return this.rest.request(request);
+ body: createBookInput,
+ });
}
getById(id: string): Observable {
- const request: Rest.Request = {
+ return this.restService.request({
method: 'GET',
url: `/api/app/book/${id}`,
- };
-
- return this.rest.request(request);
+ });
}
- update(body: Books.CreateUpdateBookInput, id: string): Observable {
- const request: Rest.Request = {
+ update(updateBookInput: Books.CreateUpdateBookInput, id: string): Observable {
+ return this.restService.request({
method: 'PUT',
url: `/api/app/book/${id}`,
- body,
- };
-
- return this.rest.request(request);
+ body: updateBookInput,
+ });
}
- delete(id: string): Observable {
- const request: Rest.Request = {
+ delete(id: string): Observable {
+ return this.restService.request({
method: 'DELETE',
url: `/api/app/book/${id}`,
- };
-
- return this.rest.request(request);
+ });
}
}
diff --git a/samples/BookStore-Angular-MongoDb/angular/src/app/store/states/books.state.ts b/samples/BookStore-Angular-MongoDb/angular/src/app/store/states/books.state.ts
index fb958142de..e43098f394 100644
--- a/samples/BookStore-Angular-MongoDb/angular/src/app/store/states/books.state.ts
+++ b/samples/BookStore-Angular-MongoDb/angular/src/app/store/states/books.state.ts
@@ -10,38 +10,38 @@ import { GetBooks, CreateUpdateBook, DeleteBook } from '../actions/books.actions
})
export class BooksState {
@Selector()
- static getBooks({ books }: Books.State) {
- return books.items || [];
+ static getBooks(state: Books.State) {
+ return state.books.items || [];
}
constructor(private booksService: BooksService) {}
@Action(GetBooks)
- get({ patchState }: StateContext) {
+ get(ctx: StateContext) {
return this.booksService.get().pipe(
- tap(books => {
- patchState({
- books,
+ tap(booksResponse => {
+ ctx.patchState({
+ books: booksResponse,
});
}),
);
}
@Action(CreateUpdateBook)
- save({ dispatch }: StateContext, { payload, id }: CreateUpdateBook) {
+ save(ctx: StateContext, action: CreateUpdateBook) {
let request;
- if (id) {
- request = this.booksService.update(payload, id);
+ if (action.id) {
+ request = this.booksService.update(action.payload, action.id);
} else {
- request = this.booksService.create(payload);
+ request = this.booksService.create(action.payload);
}
- return request.pipe(switchMap(() => dispatch(new GetBooks())));
+ return request.pipe(switchMap(() => ctx.dispatch(new GetBooks())));
}
@Action(DeleteBook)
- delete({ dispatch }: StateContext, { id }: DeleteBook) {
- return this.booksService.delete(id).pipe(switchMap(() => dispatch(new GetBooks())));
+ delete(ctx: StateContext, action: DeleteBook) {
+ return this.booksService.delete(action.id).pipe(switchMap(() => ctx.dispatch(new GetBooks())));
}
}