【发布时间】:2020-07-02 05:40:13
【问题描述】:
所以基本上在我加载/重新加载页面后,第一次单击时未显示选择选项,并且由于某种原因直到第二次单击时才显示值 很高兴得到一些答案 我还是新手,所以对我温柔一点:)
import { Component, OnInit } from '@angular/core';
import { Company } from '../_models/company';
import { CompanyService } from '../_services/company.service';
import { AlertifyService } from '../_services/alertify.service';
@Component({
selector: 'app-company',
templateUrl: './companies.component.html',
styleUrls: ['./companies.component.css']
})
export class CompaniesComponent implements OnInit {
selectedCompany: Company;
companies: Company[];
constructor(private companyService: CompanyService, private alertify: AlertifyService) { }
ngOnInit() {
this.loadCompanies();
}
loadCompanies() {
this.companyService.getCompanies().subscribe((companies: Company[]) => {
this.companies = companies;
}, error => {
this.alertify.error(error);
});
}
// selectedChangeHandler(event: any) {
// this.selectedCompany = event.target.value;
// }
}
<div class="col-12 col-md-3 col-xl-2 mt-5 bd-sidebar">
<label for="">Select Company</label> <br>
<select id="select" data-target="#navbarDropdown" [(ngModel)]="selectedCompany" >
<option value="">Select</option>
<!-- <option *ngFor="let value of companies" value="{{value.name}}">{{value.name}}</option> -->
<option *ngFor="let value of companies" [ngValue]="value">{{value.name}}</option>
</select>
</div>
<!-- <select class="form-control col-lg-8" #selectedValue name="selectedValue" id="selectedValue" [(ngModel)]="company" (ngModelChange)="assignCorporationToManage($event)">
<option *ngFor="let value of companies" [ngValue]="company">{{value.name}}</option>
</select> -->
<ul class="list-group list-group-flush">
<li class="list-group-item">Company name: {{selectedCompany.name}}</li>
<li class="list-group-item">Company address: {{selectedCompany.address}}</li>
<li class="list-group-item">Company estimated revenue: {{selectedCompany.estimatedRevenue}} </li>
</ul>
【问题讨论】:
-
查看控制台。你一定有一些错误,因为一开始你正在循环一个未初始化的数组。
-
core.js:5871 错误类型错误:在刷新视图(core.js :11773) 在 refreshComponent (core.js:13213) 在 refreshChildComponents (core.js:11504) 在 refreshView (core.js:11825) 在 refreshDynamicEmbeddedViews (core.js:13138) 在 refreshView (core.js:11796) 在 refreshComponent (core.js:13213) 在 refreshChildComponents (core.js:11504)
-
如何让它加载数组,然后才加载页面?
标签: html angular typescript asp.net-core bootstrap-4