我需要使用没有模型的角度材料表,因为我不知道服务会是什么.
所以我初始化我MatTableDataSource
和displayedColumns
动态地在这样的组件:
TableComponent:
ngOnInit() {
this.vzfPuanTablo = [] //TABLE DATASOURCE
//GET SOMETHING FROM SERVICE
this.listecidenKisi = this.listeciServis.listecidenKisi;
this.listecidenVazife = this.listeciServis.listecidenVazife;
//FILL TABLE DATASOURCE
var obj = {};
for (let i in this.listecidenKisi ){
for( let v of this.listecidenVazife[i].vazifeSonuclar){
obj[v.name] = v.value;
}
this.vzfPuanTablo.push(obj);
obj={};
}
//CREATE DISPLAYED COLUMNS DYNAMICALLY
this.displayedColumns = [];
for( let v in this.vzfPuanTablo[0]){
this.displayedColumns.push(v);
}
//INITIALIZE MatTableDataSource
this.dataSource = new MatTableDataSource(this.vzfPuanTablo);
}
Run Code Online (Sandbox Code Playgroud)
代码中最重要的部分是:
Run Code Online (Sandbox Code Playgroud)for( let v in this.vzfPuanTablo[0]){ this.displayedColumns.push(v); }
我在displayedColumns …
我无法更新我的角度服务变量值.
我有两个不相关的组件,我想使用服务将更新的对象从一个发送到另一个.但是我无法在服务中更新对象.
第一部分:
import { SoruService } from '../soru.service';
import { SoruModel, SecenekModel } from '../soruModel';
@Component({
selector: 'app-first',
templateUrl: './first.component.html',
styleUrls: ['./first.component.scss'],
providers: [SoruService]
})
export class FirstComponent implements OnInit {
public soruLst : [SoruModel];
constructor( private soruServis : SoruService ) { }
ngOnInit(){
this.soruServis.getirSoruLst().subscribe( veri => {
this.soruLst = veri as [SoruModel];
})
}
//// MAKE SOME CHANGES ON "soruLst" locally
// Send updated 'soruLst' to service
updateSoruLst(){
this.soruServis.updateSoruLst(this.soruLst);
}
}
Run Code Online (Sandbox Code Playgroud)
我的服务:
import { Injectable } from '@angular/core'; …
Run Code Online (Sandbox Code Playgroud)