0

ExtJs グリッドでカスタム グループ化ヘッダーをレンダリングしようとしています。

グループ名を表示したい。この例では、グリッドは今日、昨日、先週でグループ化されています。これは、次のコードで正常に表示されます。

groupHeaderTpl: '{name}'

グループ化は、次のようにモデルの変換フィールドで行われます。

{
    name: 'dateGroup',
    type: 'string',
    convert: function(value, record) {   

        var stamp = record.get('sentDate'),
            stamp = Ext.util.Format.round((stamp / 1000), 0),
            formattedSentDate = Info.utils.formatTimeStamp(stamp, 'd-m-y'),
            str = '';   

        if (formattedSentDate === Info.utils.getToday()) {
            str = 'Today';
        } else if (formattedSentDate === Info.utils.getYesterday()) {
            str = 'Yesterday';
        } else {
            str = 'Last week';
        }

        return str;

    }
}

モデルには、 readというブール値フィールドがあります。

メッセージが未読の場合、未読メッセージの数をグループ ヘッダー テンプレートに表示したいと思います。

私は次のようにこれを試みましたが、コンソールに何も記録されません:

                    features: [{
                        ftype: 'grouping',
                        groupHeaderTpl: Ext.create(
                            'Ext.XTemplate', 
                            '{name}: ',
                            '{name: this.unreadCount}',
                            {
                                unreadCount: function(val){

                                    this.store.each(function(item, i, count) {
                                        if(item.get('read') === false){
                                            // populate inbox store
                                            // increment the unread inbox count
                                            console.log('unread');
                                        } else {
                                            console.log('read');    
                                        }

                                    });

                                }
                            }
                            )
                    }],

これは可能ですか?それは確かですが、ExtJs には本当に慣れていないので、まだ学習中です。

4

0 に答える 0