以下是一个示例解决方案,其中包含一个 Angular 图书馆的服务和对象模型的代码示例:
import { Injectable } from '@angular/core';
@Injectable()
export class BookService {
private books: Book[] = [];
constructor() {
// 初始化图书馆中的图书
this.books.push(new Book(1, 'Book 1', 'Author 1'));
this.books.push(new Book(2, 'Book 2', 'Author 2'));
this.books.push(new Book(3, 'Book 3', 'Author 3'));
}
getBooks(): Book[] {
return this.books;
}
addBook(book: Book): void {
this.books.push(book);
}
removeBook(book: Book): void {
const index = this.books.indexOf(book);
if (index !== -1) {
this.books.splice(index, 1);
}
}
}
export class Book {
constructor(public id: number, public title: string, public author: string) {}
}
import { Component } from '@angular/core';
import { BookService, Book } from './book.service';
@Component({
selector: 'app-root',
template: `
图书馆
-
{{ book.title }} - {{ book.author }}
`,
})
export class AppComponent {
books: Book[];
newBook: Book = new Book(null, '', '');
constructor(private bookService: BookService) {
this.books = this.bookService.getBooks();
}
addBook(): void {
this.bookService.addBook(this.newBook);
this.newBook = new Book(null, '', '');
}
removeBook(book: Book): void {
this.bookService.removeBook(book);
}
}
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { AppComponent } from './app.component';
import { BookService } from './book.service';
@NgModule({
imports: [BrowserModule, FormsModule],
declarations: [AppComponent],
providers: [BookService],
bootstrap: [AppComponent],
})
export class AppModule {}
这样,你就可以在 Angular 应用程序中使用 BookService 来管理图书馆中的图书了。在 AppComponent 中,你可以通过调用 BookService 的方法来获取图书列表、添加图书和删除图书。