2017-06-20 106 views
0

我嘗試使用角度和使用的標籤輸入做一個自動完成。自動完成工作正常,但在發送表單之前,我想定義我的顯示值和顯示值的ID。Angular 2/4自動完成定義值

我的JSON文件:

[ 
      { 
       "active": true, 
       "code": "IDV", 
       "name": "Car destruct" 
      }, 
      { 
       "active": true, 
       "code": "VCV", 
       "name": "Vehicle road" 
      } 
] 

HTML:

<tag-input [(ngModel)]="folderCreate.sujet" name="sujet" 
         [theme]="'bootstrap'" [placeholder]="'Ajouter un type'" 
         [onTextChangeDebounce]="500" 
         [secondaryPlaceholder]="'Add un type'" 
         [onlyFromAutocomplete]="true"> 
          <tag-input-dropdown [autocompleteObservable]="**requestAutocompleteItemsSujet**"> 
           <ng-template let-item="item" let-index="index"> 
            {{item.display}} 
           </ng-template> 
          </tag-input-dropdown> 
        </tag-input> 

我的TS文件:

public requestAutocompleteItemsSujet = (text: string): Observable<Response> => { 
    return this.http 
     .get('../../../assets/data/type.json') 
     .map(data => data.json().map(item => item.name)); 
    } 

所以,當我把我的形式,我得到:

0: Object 
    display : Car destruct 
    value : Car destruct 

但我想:

0: Object 
    display : Car destruct 
    value : IDV 

我怎樣才能解決這個問題?

+0

請提供一個plnkr例子... – Nehal

+0

好的,但我不明白plnkr是如何工作的... – user1814879

+0

下面的這個鏈接會給你一個Plunker中的Angular2模板。你可以添加代碼來重新創建你的問題,然後保存plnkr並在你的問題中分享它的鏈接。 https://plnkr.co/edit/tpl:AvJOMERrnz94ekVua0u5 – Nehal

回答

0

我還沒有運行你的plunkr,但看着你的代碼,嘗試刪除data.json()後的第二個.map。

+0

好吧,但是當我刪除第二張地圖時,我無法顯示自動填充的項目 – user1814879