首页 > 解决方案 > 如何禁用自动键值排序Angular 6

问题描述

我在我的 ts 文件中创建了数组,并使用 ngFor 从数组中获取元素,但是当我使用键值时,角度会自动对数组进行排序。创建了如何保存类似数组的订单。

TS代码:

filterListingTypeItems: { [key: string]: object } = {


  'For sale': [
      'For sale',
      'By Agent',
      'By ownre',
      'New Construction',
      'Foreclosures',
      'Coming Soon',
    ],
    'Potential listings': [
      'Potential listings',
      'Foreclosed',
      'Pre-Foreclosure',
      'Make Me Move',
    ],
    'For Rent': ['For Rent'],
    'Recently sold': ['Recently sold'],
    _________________________: ['Open House only', 'Pending & Under Contract'],
}

HTML代码(角度材料):

<mat-optgroup
          *ngFor="let listingOptions of (filterListingTypeItems | keyvalue)"
          [label]="listingOptions.key"
        >
          <mat-option
            *ngFor="let listingOption of listingOptions.value"
            [value]="listingOption"
            >{{ listingOption }}</mat-option
          >
</mat-optgroup>

变成这样(img)

标签: angulartypescript

解决方案


您可以在组件 ts 文件中创建一个返回 0 的函数。

function returnZero() {
return 0
}

模板文件内部

<td *ngFor="let item of cfValues | keyvalue : returnZero">

推荐阅读