2016-08-17 3 views
0

Я пытаюсь получить результаты поиска, я думаю, что код верен, но данные не связаны. Тем не менее, я могу видеть результаты в консоли. Может кто-нибудь, пожалуйста, помогите мне?Данные не привязаны к шаблонам в angular2

Мой Шаблон:

 <div id="header-wrap"> 

      <div class="container clearfix"> 
       <div class="divcenter" style="max-width:990px;"> 
        <div id="primary-menu-trigger"><i class="icon-reorder"></i></div> 

        <!-- Logo 
       ============================================= --> 
        <div id="logo" style="margin-top: 5px;"> 
         <a href="#" class="standard-logo" data-dark-logo="images/logo-dark.png"><img src="assets/images/SW-Logo-Final.png" alt="Canvas Logo"></a> 


        </div> 
        <span class="inputgroupcss col-sm-5" style="padding-top:12px;"> 


            <input type="email" (keyup)=0 (keyup)='submit(button.value)' #button class="form-control required email" placeholder="Search by Name or Email" 
             style="height:38px;"> 

           <div class="col-sm-12 nopadding "> 

           <ul class="searchlist"> 
            <li *ngFor="let detail of details"> 
             <img [src]='detail.image' alt="profile_image" style="width: 35px; 
          height: 35px;"> 
             <a [routerLink]="['/demo/user',detail.profilename]">{{detail.profilename}}</a> 
            </li> 

           </ul>  
          </div> 


         </span> 


       </div> 

      </div> 

     </div> 

    </header> 

Мой компонент,

import {Component} from '@angular/core'; 
    import {ROUTER_DIRECTIVES,provideRouter} from '@angular/router'; 
    import {Http, Response, Headers} from '@angular/http'; 
    import {Observable} from 'rxjs/Observable'; 
    import { GetAllList } from './components/society/service'; 
    import { ISearch } from './components/search/details'; 
    import { IDetails } from './components/society/pro'; 
    import {Location} from '@angular/common'; 

    declare var System: any,jQuery:any; 
@Component({ 
    selector: 'demo-page', 
     templateUrl: './demo-page.html', 
    directives: [ROUTER_DIRECTIVES], 
     providers: [GetAllList], 
    }) 

    export class DemoPage { 
    location:Location; 
    details: ISearch[]; 
     list:IDetails[]; 
     constructor(location:Location,public http: Http,private _service:GetAllList) { 
     this.location = location; 
     // console.log(this.location.path()); 
       this._service.getList() 
      .subscribe(list => this.list = list); 
      console.log(this.list); 
    } 

     submit(id): any { 
     var headers = new Headers(); 
     headers.append('Content-Type', 'application/x-www-form-urlencoded') 
    this.http.get('http://localhost/a2server/index.php/profile/search/' + id, { headers: headers }) 
      .subscribe(response => { 
      if (response.json().error_code == 0) { 
        this.details = <ISearch[]>response.json().data; 
        // console.log(this.details); 
      } else { 
       this.details = []; 
      } 
      if (id == '') { 
       this.details = []; 
      } 

     } 

      )} 


     } 

моя консоль,

[Object, Object, Object, Object, Object, Object, Object, Object, Object]0: Objectactive: "1"connection_status: nullcountry: "Greenland"email: "[email protected]"firstname: "Sachin"friends_count: "5"image: ""lastname: "Tendulkar"password: "1"phone: "2"profile_id: "1"profilename: "sachin tendulkar"relation_id: nullrepeatpassword: nullstatus: "1"street: "Perry Cross Road,Mumbai"type: nullzip: ""__proto__: Object1: Object2: Object3: Object4: Object5: Object6: Object7: Object8: Objectlength: 9__proto__: Array[0] 
+0

, пожалуйста, распечатайте вывод на консоли. это действительно массив? ИЛИ, может быть, id каждый раз ПУСТОЙ, и список немедленно очищается?! код выглядит нормально. – mxii

ответ

1
if (id == '') { 
    this.details = []; 
} 

может быть, это выполняется ?!

Код кажется прекрасным.

+0

Да @ mxii, ур абсолютно корректен, но можете ли вы рассказать мне, как получить решение .... я не могу отправить значение, которое я искал для своих ts ..... – MMR

+0

я не могу видеть значение в консоли – MMR

+0

Я не знаю, ваш способ doint правильно. посмотрите на этот плункер: https://plnkr.co/edit/8CaPrjxb7g6KC9tKDkck?p=preview – mxii

0

Поле класса под названием "детали", но в шаблоне вы имеете написанная «деталь». Не должно быть:

{{details.profilename}} 
+0

Я детализирую детали как деталь – MMR

1

Почему у вас есть двойной привязку события keyup в вашем html? (keyup) = 0 (keyup) = 'submit (button.value)', удалить первый

+0

stil no use ........... Проблема заключается в том, что я не получаю ключевое слово seish для my ts – MMR

Смежные вопросы