Javascript 当ngModel发生变化时,如何解决select中无值问题?
项目包含一个组件和一个服务 组件注入服务并使用服务字段筛选器。组件hmtl中有一个select。select的[(ngModel)]绑定到filter.size.width 组成部分:Javascript 当ngModel发生变化时,如何解决select中无值问题?,javascript,angular,typescript,select,binding,Javascript,Angular,Typescript,Select,Binding,项目包含一个组件和一个服务 组件注入服务并使用服务字段筛选器。组件hmtl中有一个select。select的[(ngModel)]绑定到filter.size.width 组成部分: @Component({ selector: 'app-facet-sizes-static', templateUrl: './facet-sizes-static.component.html', styleUrls: ['./facet-sizes-static.component.scss']
@Component({
selector: 'app-facet-sizes-static',
templateUrl: './facet-sizes-static.component.html',
styleUrls: ['./facet-sizes-static.component.scss']
})
export class FacetSizesStaticComponent implements OnInit {
constructor(
private Search: SearchService
) {
this.filter = Search.filter;
}
clearFilter() {
this.filter.sizes.width = 0;
}
}
其模板:
<div (click)="clearFilter()"></div>
<!-- Comment_01 -->
{{filter.sizes.width}}
<div *ngIf="filter.sizes">
<select name="width"
[(ngModel)]="filter.sizes.width">
<option [ngValue]="null">~</option>
<option *ngFor="let item of facet.sizes[0].parts.width; let x = index"
[ngValue]=item>
{{ item }}
</option>
</select>
</div>
当我在“选择”中更改选项时,它会在我检查时更改filter.size.width。但有两个问题:
如何解决它?听起来像是您的facet.size[0]。parts.width数组不包含值===0。我看到您的选项的值为null,但null不等于0,因此不会被选择。如果添加值为0的选项;它应该选择它
export class SearchService {
filter: SearchServiceFilter = null;
constructor() {
this.filter = {
sizes: {
width: 0
},
};
}
}