我已经使用PHP作为后端语言从数据库中调用了一个项目数组,并且已经在ionic中正确显示了它的视图,但是我尝试记录每个项目的ID,以便可以使用它执行其他任务但它不断为我提供循环中第一项的ID
下面的代码是ionic中的ts代码,用于在页面init上获取数据
ngOnInit() {
this.username = this.navParams.get('mobile');
var headers = new Headers();
headers.append("Accept", 'application/json');
headers.append('Content-Type', 'application/json');
let requestOptions = new RequestOptions({ headers: headers });
let data = {
userid: this.username
};
this.http.post('http://127.0.0.1:8000/api/myitems', JSON.stringify(data), requestOptions)
//.timeout(40000)
.map(res => res.json())
.subscribe(res => {
this.items =res.My_data.phone;
console.log(this.items);
});
}
下面是单击该项目时的代码
Detail(item) {
console.log(item);
}
这是离子视图下的html代码
<ion-item *ngFor="let item of items" on-click="Detail()">
{{item.phone_name}} | {{item.model}} <br> {{item.serial_no}}
</ion-item>
每次我单击它时,都应该假设项目的ID像9,10,11,12一样循环,但它仅返回9
下面的PHP代码(与laravel一起构建
public function index(Request $request){
$car=caritem::where('ownerid', $request->userid)->get();
$comp=Computer::where('ownerid', $request->userid)->get();
$phone = useritem::where('ownerid', $request->userid)->get();
$my_data = ['status' => 200, 'Author\'s Name' => "Ademola Segun", 'Api Version' => "v1.0",
'Purpose' => "Findit App API", 'car' => $car, 'comp'=>$comp, 'phone'=> $phone];
return response()->json(['My_data'=>$my_data]);
}
答案 0 :(得分:0)
首先,您的Detail()函数正在等待参数,而您从html中不提供该参数,
像这样更新您的html:
<ion-item *ngFor="let item of items" on-click="Detail(item)"> .... </ion-item>
在您的ts中,应该有一个具有id的对象