, :
{
batches: {
names: [
{
first: 'FirstName',
last: 'LastName'
},
{
first: 'FirstName1',
last: 'LastName1'
}
]
}
}
,
export interface Name { first: string; last: string; }
, :
import { Injectable } from '@angular/core';
import { Name } from "./name";
import { AngularFireDatabase, AngularFireList } from "angularfire2";
@Injectable()
export class NameService {
constructor(private db:AngularFireDatabase) { }
getAllNames(): AngularFireList<Name> {
return this.db.list('batch/name');
}
}
:
import { Component, OnInit } from '@angular/core'
import { AngularFireList } from "angularfire2";
@Component({
selector: 'app-name-list',
template: `
<div *ngFor="let name of names$">
{{ name.last }}, {{ name.first }}
</div>
`
})
export class NameListComponent implements OnInit {
names$: AngularFireList<Name>;
constructor(private nameService: NameService) {}
ngOnInit() {
this.names$ = nameService.getAllNames();
}
}
Angular websockets . , , , .