我在 Angular 6 中创建了一个包含两个组件的单页面应用程序。它们通过数据服务与网络服务器进行通信。一个组件列出所有项目,另一个组件允许用户将项目添加到该列表。有趣的是,通过在删除列表组件中的一项后调用 getItems,它会刷新列表,而从创建组件调用 get MatTableDataSource 属性则不会刷新列表。任何积分都非常感激。谢谢。
列表组件:
import { Component, OnInit } from '@angular/core';
import { DataService } from '../data.service';
import { MatTableDataSource } from '@angular/material/table';
import { Item } from '../items.model';
@Component({
selector: 'app-list',
templateUrl: './list.component.html',
styleUrls: ['./list.component.css']
})
export class ListComponent implements OnInit {
public items = new MatTableDataSource<Item>();
private displayedColumns = ['name', 'status', 'actions'];
constructor(private data: DataService) { }
ngOnInit() {
this.getItems();
console.log('New list page initialized');
}
getItems() {
this.data.getItems().subscribe( (items: Item[]) => {
this.items.data …Run Code Online (Sandbox Code Playgroud)