这是服务employee-service.service.ts的代码
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { IEmployee } from './employee';
import { Observable } from 'rxjs'
@Injectable({
providedIn: 'root'
})
export class EmployeeServiceService {
private _url:string = "/assets/data/employees.json"
constructor(private http: HttpClient) { }
getEmployees(): Observable<IEmployee[]>{
return this.http.get<IEmployee[]>(this._url);
}
}
将typescript代码作为employee-list.component.ts
import { Component, OnInit } from '@angular/core';
import { EmployeeServiceService } from '../employee-service.service';
@Component({
selector: 'app-employee-list',
templateUrl: `<ul *ngFor="let employee of employees">
<li>{{employee.id}}. {{employee.name}} - {{employee.age}}</li>
</ul>`,
styleUrls: ['./employee-list.component.less']
})
export class EmployeeListComponent implements OnInit {
public employees = [];
constructor(private _employeeService: EmployeeServiceService) { }
ngOnInit() {
this._employeeService.getEmployees();
.subscribe(data =>this.employees = data);
}
}
有一个employee.json
[
{"id":1,"name":"A","age":5},
{"id":2,"name":"B","age":4},
{"id":3,"name":"C","age":3},
{"id":4,"name":"D","age":2},
{"id":5,"name":"E","age":1}
]
和一个接口employee.ts
export interface IEmployee{
id:number,
name:string,
age:number
}
我正在使用angular 7,angular / cli版本为7.1.0,rxjs版本为6.3.3
即时尝试进行http get调用以处理来自json的数据并显示所需的字段 . 但是,在使用从'rxjs'导入的Observables时 . 我看到一个错误显示为'找不到名字订阅'我怎么能解决这个问题 . 我已经将rxjs版本更新为rxjs6了?