Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';t按网格中的用户故事计数对功能进行排序_Javascript_Rally_Appsdk2 - Fatal编程技术网

Javascript Can';t按网格中的用户故事计数对功能进行排序

Javascript Can';t按网格中的用户故事计数对功能进行排序,javascript,rally,appsdk2,Javascript,Rally,Appsdk2,编辑:找到答案 我从中找到了答案。有一个名为remoteSort的私有存储配置字段默认设置为true,因此除非remoteSort显式设置为false,否则不会使用客户端分类器 我试图根据功能中用户故事的数量对网格进行排序。我试过几种不同的方法。第一个是数据存储配置中的分拣机功能: Ext.create('Rally.data.wsapi.Store',{ model: 'PortfolioItem/Feature', autoLoad:true,

编辑:找到答案 我从中找到了答案。有一个名为remoteSort的私有存储配置字段默认设置为true,因此除非remoteSort显式设置为false,否则不会使用客户端分类器


我试图根据功能中用户故事的数量对网格进行排序。我试过几种不同的方法。第一个是数据存储配置中的分拣机功能:

    Ext.create('Rally.data.wsapi.Store',{
        model: 'PortfolioItem/Feature',
        autoLoad:true,
        start: 0,
        pageSize: 20,
        fetch: ['Name', 'ObjectID', 'Project', 'Release', 'UserStories','State','_ref'],
        context://context stuff
        filters:[
            //filter stuff
        ],
        sorters:[
            {
                property:'UserStories',
                sorterFn: function(o1, o2){
                    return o1.get('UserStories').Count - o2.get('UserStories').Count;
                }
            }
        ],
        listeners: //listener stuff
但这总是一无所获。(当没有包括分类器时,我确实得到了所有正确的功能,但我无法对每个功能的用户故事数进行排序)

我还尝试向网格中的列添加一个分类器,如图所示

但是我遇到的问题与另一个线程中的人遇到的问题相同,没有进行排序。

您可以尝试只使用功能模型中的“LeafStoryCount”属性,而不是尝试使用collection count属性编写自己的排序方法。
    xtype: 'rallygrid',
        width:'50%',
        height:400,
        scroll:'vertical',
        columnCfgs: [
            {
                text:'Stories', 
                dataIndex:'UserStories', 
                xtype:'numbercolumn',
                sortable:true,
                doSort: function(direction){
                    var ds = this.up('grid').getStore();
                    var field = this.getSortParam();
                    console.log(ds, field, direction);
                    ds.sort({
                        property: field,
                        direction:direction,
                        sorterFn: function(us1, us2){
                            return (direction=='ASC'? 1 : -1) * (us1.get(field).Count - us2.get(field).Count);
                        }
                    });
                },
                width:'20%',
                renderer:function(us){
                    return us.Count; 
                }
            }
        ]