0

以下のコードを使用して、剣道のオートコンプリートを更新しています。しかし、UI では [object Object] と表示されます。

<ng-template kendoGridCellTemplate let-dataItem="dataItem" let-rowIndex="rowIndex">
    <kendo-autocomplete #dropDownList [data]="aDirectoryData" [clearButton]="true"
                        [(ngModel)]="addressDisplayValue[rowIndex]" [disabled]="dataItem.isErroredItem" [allowCustom]="true"
                        (keyup)="fShippingAddressAutoComplete($event)" 
                        (valueChange)="onValue($event, rowIndex, dataItem)" [value]="[(ngModel)]="addressDisplayValue[rowIndex]"
                        (click)="fShippingAddress(dropDownValue.value)" (focus)="dropDownList.toggle()">
    </kendo-autocomplete>
</ng-template>
    addressDisplayValue: string[] = [];
    onValue(shippingAdd: IShipToAddresses, rowIndex: number, dataItem: ISalesOrderGroups): void {  
   
      this.addressDisplayValue[rowIndex] = '';
      
      const shippingId = 'abcd'
     
        this.addressDisplayValue[rowIndex] = (shippingId + ' ' +
        'defgh');
     }

ただし、 setTimeOut を使用すると機能します。

setTimeout(() => {
    this.addressDisplayValue[rowIndex] = (shippingId + ' ' + 'defgh');
});

コーディングのガイドラインにより、ここでは setTimeOut を使用できません。別の方法はありますか?

4

1 に答える 1