AngularMaterial的自动完成过滤
创始人
2024-10-28 09:01:27
0

Angular Material中提供了一个自动完成组件,但当列表的数量增多时,它的效果并不好。因此,我们需要筛选出我们想要的结果,以提高自动完成组件的可用性。

以下是如何使用Angular Material中的自动完成筛选器的示例代码:

HTML代码:


  
  
    
      {{ option.name }}
    
  

TypeScript代码:

import { Component } from '@angular/core';
import { FormControl } from '@angular/forms';
import { Observable } from 'rxjs/Observable';
import { startWith } from 'rxjs/operators/startWith';
import { map } from 'rxjs/operators/map';

export class Option {
  constructor(public name: string) { }
}

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  myControl = new FormControl();
  options = [
    new Option('Option 1'),
    new Option('Option 2'),
    new Option('Option 3'),
    new Option('Option 4'),
    new Option('Option 5')
  ];

  filteredOptions: Observable;

  constructor() {
    this.filteredOptions = this.myControl.valueChanges
      .pipe(
        startWith(''),
        map(val => this.filter(val))
      );
  }

  filter(val: string): Option[] {
    return this.options.filter(option =>
      option.name.toLowerCase().indexOf(val.toLowerCase()) === 0);
  }

  displayFn(option: Option): string {
    return option ? option.name : '';
  }
}

在这个例子中,我们创建了一个FormControl和一个由Option对象组成的选项数组,然后使用RxJS过滤器对这些选项进行筛选。我们还定义了一个用于显示选项名称的函数。最后,我们将这些过滤后的选项传递给mat-option指令,以在Angular Material的自动完成组件中展示它们。

相关内容

热门资讯

透视安卓版(wPk)透视外挂(... 1、透视安卓版(wPk)透视外挂(黑科技)外挂第一视角(竟然真的有挂);代表性(透视辅助软件透明挂)...
黑科技真的(微扑克有脚本吗)外... 黑科技真的(微扑克有脚本吗)外挂黑科技辅助技巧(透视)果然真的是有挂(黑科技介绍)在进入微扑克有脚本...
透视ai代打(WPK)ai辅助... 透视ai代打(WPK)ai辅助购买渠道(黑科技)ai辅助购买渠道(确实是真的有挂)是一款可以让一直输...
黑科技ai(德州之星软件)外挂... 黑科技ai(德州之星软件)外挂透明挂辅助方法(透视)果然是真的有挂(黑科技方法)1、每一步都需要思考...
黑科技真的(wePOKE)计算... 黑科技真的(wePOKE)计算辅助(黑科技)辅助使用教程(果然有挂)是一款可以让一直输的玩家,快速成...
黑科技ai代打(微扑克透明挂)... 黑科技ai代打(微扑克透明挂)外挂黑科技辅助app(透视)好像是真的有挂(黑科技详情)1)微扑克透明...
大神辅助(微扑克)ai软件(辅... 大神辅助(微扑克)ai软件(辅助挂)ai防封(切实存在有挂)1、许多玩家不知道辅助软件怎么退出观战2...
黑科技ai代打(智星德州菠萝辅... 黑科技ai代打(智星德州菠萝辅助器)外挂透视辅助安装(透视)果然是真的有挂(黑科技辅助);1、实时智...
黑科技辅助(微扑克)的辅助工具... 黑科技辅助(微扑克)的辅助工具苹果(辅助挂)必胜技巧(确实真的有挂);无聊就玩这款真的有辅助,无限炸...
黑科技模拟器(wepoke辅助... 黑科技模拟器(wepoke辅助有挂)外挂透明挂辅助器(透视)确实有挂(黑科技解密)1)wepoke辅...