微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

角度ng-select:GroupBy数组ng-select

如何解决角度ng-select:GroupBy数组ng-select

嗨,我的ng-select出现了问题,在这种情况下,storeTypes是一个数组,如果storeTypes将是一个字符串,那么功能已经很完善了,但是我需要这个变量是string []。我该怎么办?

@Component({
    selector: 'my-app',template: `
             
        <label>Grouping</label>
        <ng-select [items]="accounts"
                bindLabel="label"
                bindValue="code"
                groupBy="storeTypes[0]"
                [(ngModel)]="selectedAccount">
        </ng-select>
        `
})
export class AppComponent {

    selectedAccount = '9'
    accounts = [
        {code: "9",checked: false,label: "Adidas",storeTypes:["Store"]},{code: "91",label: "Nike",{code: "92",label: "5guys",storeTypes:["Restaurant"]},{code: "93",label: "McDonal",{code: "94",label: "FastFood",storeTypes:["Restaurant"]}
   ];
   
    constructor() {
    }
    
}

现在我看到了: enter image description here

我需要这个: enter image description here

解决方法

一个问题是 groupby 应该是 [groupby] 。 其次,您应该创建一个助手函数进行分组,因为groupby将采用属性名称或函数。

尝试以下方法:

@Component({
    selector: 'my-app',template: `
             
        <label>Grouping</label>
        <ng-select [items]="accounts"
                bindLabel="label"
                bindValue="code"
                [groupBy]="groupingHelper"
                [(ngModel)]="selectedAccount">
        </ng-select>
        `
})
export class AppComponent {

    groupingHelper(item){return item.storeTypes[0]}
    selectedAccount = '9'
    accounts = [
        {code: "9",checked: false,label: "Adidas",storeTypes:["Store"]},{code: "91",label: "Nike",{code: "92",label: "5guys",storeTypes:["Restaurant"]},{code: "93",label: "McDonal",{code: "94",label: "FastFood",storeTypes:["Restaurant"]}
   ];
   
    constructor() {
    }
    
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。