在哪里存储一个对象数组,它是angular2中另一个对象的一部分?

时间:2018-02-02 13:25:55

标签: arrays angular object angular5

我有一个公司的对象。在这个对象中,我有一些其他的对象..

object{
 country {
         country_code: string;
         country_name: string
 }, 
 yearlyIncome {
         id: number;
         amount: string;
 }, 
 ...
}

在我的项目中,您可以创建新公司或编辑现有公司。我在下拉列表中使用此对象。因此,您不要将此数据写入文本字段,您可以在下拉列表中选择国家/地区,选择年收入类别,如0-1000美元,1000-5000美元,.... 所以这个对象有默认数据,但我不知道在哪里存储这个数据。我不认为将这些数据存储在数据库中是个好主意,因为这个数据不会改变。所以我想把dafault数据写入代码。但到哪里去?为每个对象创建模型和服务?但如果我这样做,将会有很多模型和服务。将其存储在公司服务中?但那时公司的服务将会很长。 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

将默认值存储在数据库中并使用该服务获取值:

ngOnInit(){
    this.countries$ = this.companyService.getDefaultCountries();
    this.incomeRanges$ = this.companyService.getDefaultIncomeRanges();
}

确保后端缓存这些值。 如果您使用的是Express.js,则可以使用apicache

然后在您的模板中,您可以使用它来初始化您的下拉列表

<select>
        <option *ngFor="let country of countries$ | async" value="country">{{country.name}}</option>
</select>