Angularmat-autocomplete无法使用通过函数返回的选项。
创始人
2024-10-28 06:31:05
0

在使用mat-autocomplete时,如果选项是通过调用函数来返回的,则需要在函数返回之前将选项放入一个数组中。这样mat-autocomplete才能够正确地使用它们。

以下是示例代码:

在component.ts文件中,定义一个函数来返回选项。该函数首先调用一个API来获取选项,然后将选项放入数组中,最后返回该数组:

import { Component } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs/Observable';
import { map } from 'rxjs/operators';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  optionList: any[] = [];

  constructor(private http: HttpClient) {}

  getOptions(keyword: string): Observable {
    return this.http.get(`https://api.example.com/options?keyword=${keyword}`).pipe(
      map((result: any) => {
        this.optionList = result.options; // 将选项放入数组中
        return this.optionList;
      })
    );
  }
}

在component.html文件中,使用mat-autocomplete时,使用ng-template对返回的选项进行循环。这里的options是一个本地变量,它保存了mat-autocomplete使用的选项数组。然后,调用getOptions函数来获取选项:


  
  
    
      {{ option }}
    
  

然后,在component.ts文件中,在函数返回中调用mat-autocomplete的update方法,传递选项数组作为参数:

import { Component } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs/Observable';
import { map } from 'rxjs/operators';
import { MatAutocomplete } from '@angular/material';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  optionList: any[] = [];

  constructor(private http: HttpClient) {}

  getOptions(keyword: string, autocomplete: MatAutocomplete): Observable {
    return this.http.get(`https://api.example.com/options?keyword=${keyword}`).

相关内容

热门资讯

透视了解!红龙poker辅助平... 透视了解!红龙poker辅助平台(透视)新2025教程(2024已更新)(哔哩哔哩)1、红龙poke...
透视透视!aapoker辅助器... 透视透视!aapoker辅助器是真的吗(透视)透视插件(原来是真的有挂);aapoker辅助器是真的...
透视软件!红龙poker辅助器... 透视软件!红龙poker辅助器免费观看(透视)介绍教程(2024已更新)(哔哩哔哩)1、红龙poke...
透视黑科技!aa poker透... 透视黑科技!aa poker透视软件(透视)ai插件(原来真的有挂);1、用户打开应用后不用登录就可...
透视总结!德州局怎么透视(透视... 透视总结!德州局怎么透视(透视)透牌教程(2021已更新)(哔哩哔哩);德州局怎么透视软件透明挂微扑...
透视代打!aapoker怎么开... 透视代打!aapoker怎么开辅助器(透视)透视脚本下载(果然是真的有挂)1、全新机制【aapoke...
透视苹果版!竞技联盟破解版最新... 透视苹果版!竞技联盟破解版最新版(透视)曝光教程(2024已更新)(哔哩哔哩)1、玩家可以在竞技联盟...
透视攻略!aapoker免费透... 透视攻略!aapoker免费透视脚本(透视)透视方法(一贯是有挂)1、aapoker免费透视脚本系统...
透视中牌率!红龙poker有辅... 透视中牌率!红龙poker有辅助吗(透视)技巧教程(2023已更新)(哔哩哔哩)1、实时红龙poke...
透视透视挂!aapoker怎么... 透视透视挂!aapoker怎么拿好牌(透视)万能辅助器(本来有挂)1、aapoker怎么拿好牌系统规...