AngularMaterial自动完成:如何在选项选择时防止值更改?
创始人
2024-10-28 12:00:49
0

可以通过使用MatAutocompleteSelectedEvent来获取当前所选项的值,并将它作为输入框的初始值进行设置,以阻止值的更改。下面是代码示例:


  
  
    
      {{option}}
    
  

import { Component, OnInit } from '@angular/core';
import { FormControl } from '@angular/forms';
import { Observable } from 'rxjs';
import { startWith, map } from 'rxjs/operators';
import { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';

@Component({
  selector: 'app-autocomplete',
  templateUrl: './autocomplete.component.html',
  styleUrls: ['./autocomplete.component.css']
})
export class AutocompleteComponent implements OnInit {
  myControl = new FormControl();
  options: string[] = ['Angular', 'React', 'Vue'];
  filteredOptions: Observable;

  constructor() { }

  ngOnInit(): void {
    this.filteredOptions = this.myControl.valueChanges.pipe(
      startWith(''),
      map(value => this._filter(value))
    );
  }

  private _filter(value: string): string[] {
    const filterValue = value.toLowerCase();

    return this.options.filter(option => option.toLowerCase().includes(filterValue));
  }

  onOptionSelected(event: MatAutocompleteSelectedEvent): void {
    this.myControl.setValue(event.option.value, {emitEvent: false});
  }
}

在这个示例中,选中一个选项时,它不会改变输入框的值,而是将该选项设置为输入框的初始值。值的更改会被阻止。

相关内容

热门资讯

我来向大家传授!蜀山四川智能辅... 我来向大家传授!蜀山四川智能辅助插件,蛮籽麻旺重庆辅助,详细软件(有挂详情)一、蜀山四川智能辅助插件...
六分钟了解!蜀山四川小程序脚本... 六分钟了解!蜀山四川小程序脚本,丽水都来脚本辅助,详细插件(讲解有挂)1、超多福利:超高返利,海量正...
终于清楚!传送屋软件辅助,皮皮... 终于清楚!传送屋软件辅助,皮皮游戏破解器,详细神器(详细教程)1、上手简单,内置详细流程视频教学,新...
推荐攻略!新财神辅助器,情怀七... 推荐攻略!新财神辅助器,情怀七喜游戏辅助,详细攻略(的确有挂)1、完成情怀七喜游戏辅助有辅助插件,帮...
分享实测!情怀游戏辅助器破解版... 分享实测!情怀游戏辅助器破解版,青鸟辅助平台,详细教程(存在有挂)1、上手简单,内置详细流程视频教学...
玩家必备攻略!微信小程序微乐辅... 玩家必备攻略!微信小程序微乐辅助器,乐达大连穷胡小鸡满天飞,详细脚本(有挂秘诀)1、该软件可以轻松地...
技术分享!闲逸亲友圈app辅助... 技术分享!闲逸亲友圈app辅助,江西中指黑科技辅助软件,详细工具(有挂解密)1、江西中指黑科技辅助软...
今日科普!福建13水插件,吉安... 今日科普!福建13水插件,吉安小程序中至游戏辅助,详细app(有挂解密)所有人都在同一条线上,像星星...
盘点十款!南宁友乐辅助,拱趴大... 盘点十款!南宁友乐辅助,拱趴大菠萝辅助工具,详细器(有挂攻略)1、许多玩家不知道拱趴大菠萝辅助工具辅...
2分钟细说!家乡大二的技巧,开... 2分钟细说!家乡大二的技巧,开挂科技软件免费,详细app(存在有挂)小薇(辅助器软件下载)致您一封信...