我想发出一个http get请求,它返回要在ngFor
循环中使用的数据的json数组。我不确定做这件事的最好方法。this.list
是要在ngFor
指令中遍历的列表。出于测试目的,json文件位于我的本地计算机上。我已经阅读了Angular 2文档,以及udemy课程,但我无法理解它。我怀疑这是很简单的东西。
带有ngFor
指令的组件。
constructor(private router:Router, private rec:RecommendationsService ){}
ngOnInit(){
this.rec.getRecommendations().subscribe(
data=>{
this.x = JSON.stringify(data);
alert(this.x);
this.list = this.x;
}
);
}
get请求位于服务中
import 'rxjs/Rx';
@Injectable()
export class RecommendationsService{
url="//Users/Daniel/Desktop/Reccomendations.json";
constructor(private http:Http){};
getRecommendations(){
return this.http.get(this.url).map(res => res.json);
}
}
这是需要数据的ngfor。
<div *ngFor="let item of list, let i = index" data-toggle="modal" data-target="#recModal">
<div class="row rowTopBuffer rowDiv" (click)="toModal(item.name, item.description, item.recLocLat, item.recLocLong, item.picturePath)">
<div class="col-sm-12 col-md-4 titleDiv" >
<img class="recommendationImages img-responsive img-rounded" src={{item.picturePath}}>
</div>
<div class="col-sm-12 col-md-6 descDiv">
<p class="itemTitle">{{item.name}}</p>
<p id="{{desc+i}}">{{item.description}}</p>
</div>
</div>
</div>
当前异常:运行此代码时,对象对象在控制台中抛出。
https://stackoverflow.com/questions/38246388
复制