我是Angular和Typescript的新手,正在尝试将一些类属性传递到同一个类中定义的数组中。请参阅下面的AppComponent类。
import { Component } from '@angular/core';
import * as Columns from './dropdown';
import { Query } from './Query';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
keys = Object.keys;
regions = Columns.Region;
statuses = Columns.Status;
languages = Columns.Language;
types = Columns.Type;
searchQuery: string;
selectedRegion: string;
selectedStatus: string;
selectedLanguage: string;
selectedType: string;
searchArray: string[] = [ this.searchQuery, this.selectedRegion, this.selectedStatus, this.selectedLanguage, this.selectedType ];
QueryString = new Query(this.searchQuery, this.selectedRegion, this.selectedStatus, this.selectedLanguage, this.selectedType);
}
然后在我的HTML中,如果我只是这样做
<div> {{searchArray}} </div>
什么都没出现。但如果我这么做了
<div>{{searchQuery}} + {{selectedLanguage}}</div>
然后,当我在搜索框中输入时,我可以实时看到变量中的更改。为什么当我试图将值传递给数组时,数组以null结束?
我认为这是一个异步问题,因为当我进行调用时,属性可能没有值,但我可以调用searchQuery、selectedRegion、selectedStatus等,并在搜索框中输入并从下拉框中进行选择时,在页面上看到它们发生了变化,这让我认为这不是问题所在--一旦它有了值,值就会显示出来。
然后我认为这是因为我没有初始化或设置这些变量的构造函数,但它们绑定到不同的输入元素。它们从用户那里获得它们的值,所以我不能自己设置它们。我如何将它们放入数组并将它们传递给函数?如果需要,我可以添加我的HTML文件。
https://stackoverflow.com/questions/56743038
复制相似问题