
界面操作触发大分类id改变,根据id获取二级分类的数据进行绑定显示。
html:
<div style="overflow: hidden;float: left;padding-left: 38px">
<div style="margin-bottom: 10px;display:inline-block;">
<span> 选择大分类:</span>
<div class="select">
<select name='make' [(ngModel)]="matCase.bigType" (change)="getSmallTypes();">
<option *ngFor="let i of bigTypes" value='{{}}'>
{{}}
</option>
</select>
</div>
</div>
<div style="margin-bottom: 10px;display:inline-block;">
<span> 选择二级分类:</span>
<div class="select">
<select name='make' [(ngModel)]="matCase.smallType">
<option *ngFor="let i of smallTypes" value='{{}}'>
{{}}
</option>
</select>
</div>
</div>
</div>
ts:构建两个函数,大分类在
ngOnInit() {}函数初始化的时候获取对应的值;/*
* 发布素材需要关联一个分类,
* 大分类必选,二级分类非必选,需要做成联动效果
* 选择一级分类后,动态得到二级分类下的数据,没有就显示空
* */
bigTypes: any = []
smallTypes: any = []
//分类列表
getBigTypes(): void {
let sendData = {
created: '',
sort: '',
name: '',
}
let connect = this._api.getApi({
apiUrl: api.getBigList,
sendData: sendData,
type: 'get',
})
connect.then(res => {
if (res && res.data) {
this.bigTypes = res.data
} else {
this.bigTypes = []
}
})
}
//获得小分类
getSmallTypes(): void {
console.log('e.target.value',this.matCase.bigType);
let n = this.matCase.bigType;
let s = {
id: n, //大分类id
}
let connect = this._api.getApi({
apiUrl: api.getCategoryByPid,
sendData: s,
type: 'get',
})
connect.then(res => {
if (res && res.data) {
// log(res.data, '查看小分类列表')
this.smallTypes = res.data
} else {
this.smallTypes = []
}
})
}
















