Как получить идентификатор элемента в массиве - PullRequest
0 голосов
/ 23 мая 2019

Я вызвал массив элементов из моей базы данных, используя PHP в качестве языка бэкэнда, и я правильно отобразил его в своем представлении в ионном режиме, но я попытался зарегистрировать идентификатор каждого элемента, чтобы использовать его для выполнения других задач. но он продолжает давать мне идентификатор первого элемента в цикле

приведенный ниже код является кодом 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]);

}

1 Ответ

0 голосов
/ 23 мая 2019

Во-первых, ваша функция Detail () ожидает параметра, а из вашего html вы его не передаете,

Обновите ваш html следующим образом:

<ion-item *ngFor="let item of items" on-click="Detail(item)"> .... </ion-item>

в вашей тс вы должны получить объект с идентификатором

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...