Rally 把空行藏在纸板里

Rally 把空行藏在纸板里,rally,Rally,可以在rallycardboard中隐藏没有卡的行吗?我没有看到任何行配置,也找不到一种简单的方法来循环遍历这些行并找出哪些行是空的 this.add({ xtype: 'rallycardboard', rowConfig: { //your rowConfig }, listeners: { load: function(board) { var rows = board.getRows();

可以在rallycardboard中隐藏没有卡的行吗?我没有看到任何行配置,也找不到一种简单的方法来循环遍历这些行并找出哪些行是空的

this.add({
    xtype: 'rallycardboard',
    rowConfig: {
        //your rowConfig
    },
    listeners: {
        load: function(board) {
            var rows = board.getRows();
            _.each(rows, function(row) {
                var cardsInRow = board.getCardsInRow(row);
                var cardCount = _.flatten(_.values(cardsInRow)).length;
                if(cardCount === 0) {
                    row.collapse();
                }
            });
        }
    }
});

谢谢

如果您的行基于具有一组受约束的值(ScheduleState、自定义下拉字段等)的字段,则无论是否有卡,电路板都会为每个值呈现一行。这听起来像是你遇到的。如果能够传入配置以显示空行或不显示空行,这可能是对组件的一个很好的补充

同时,您应该能够通过向电路板添加一个负载侦听器来解决这个问题,在行上循环,然后在行为空时折叠它们

this.add({
    xtype: 'rallycardboard',
    rowConfig: {
        //your rowConfig
    },
    listeners: {
        load: function(board) {
            var rows = board.getRows();
            _.each(rows, function(row) {
                var cardsInRow = board.getCardsInRow(row);
                var cardCount = _.flatten(_.values(cardsInRow)).length;
                if(cardCount === 0) {
                    row.collapse();
                }
            });
        }
    }
});

如果您将行基于具有一组受约束值(ScheduleState、自定义下拉字段等)的字段,则无论是否有卡,电路板都会为每个值呈现一行。这听起来像是你遇到的。如果能够传入配置以显示空行或不显示空行,这可能是对组件的一个很好的补充

同时,您应该能够通过向电路板添加一个负载侦听器来解决这个问题,在行上循环,然后在行为空时折叠它们

this.add({
    xtype: 'rallycardboard',
    rowConfig: {
        //your rowConfig
    },
    listeners: {
        load: function(board) {
            var rows = board.getRows();
            _.each(rows, function(row) {
                var cardsInRow = board.getCardsInRow(row);
                var cardCount = _.flatten(_.values(cardsInRow)).length;
                if(cardCount === 0) {
                    row.collapse();
                }
            });
        }
    }
});

谢谢你的回复,凯尔。getCardsInRow正是我想要的。row.collapse()可以工作,但是是否建议使用任何函数来删除这些行?我相信row.destroy()会起作用,但我不确定这会有什么负面影响。另外,作为旁注…您知道更新行中文本的方法吗?我正在考虑将每行的卡片数添加到行文本中,这样会更好;以完全删除该行。这应该得到充分支持。我忘记了那个方法。我没有看到一个完全支持的自定义标题文本的方法。这将是对组件的又一个很好的补充。现在最简单的方法可能是在rowConfig的headerConfig:rowConfig:{headerConfig:{getTitle:function(){return this.getValue()+'myCustomTitle';}}}}}中传入{u getTitle的实现。您是否推荐将卡片计数传递到变量中以替换'myCustomTitle'的最佳做法?我能够获得row对象的计数(如您上面所述),但无法从rowConfig:headerConfig访问。这是一个好问题。您可能需要使用Ext.ComponentQuery.query('rallycardboard')[0]对线路板组件进行全局查找,然后从那里开始。正如您所发现的,这个组件有一些改进的机会,但至少您现在可以解决大部分问题……感谢您的回复,Kyle。getCardsInRow正是我想要的。row.collapse()可以工作,但是是否建议使用任何函数来删除这些行?我相信row.destroy()会起作用,但我不确定这会有什么负面影响。另外,作为旁注…您知道更新行中文本的方法吗?我正在考虑将每行的卡片数添加到行文本中,这样会更好;以完全删除该行。这应该得到充分支持。我忘记了那个方法。我没有看到一个完全支持的自定义标题文本的方法。这将是对组件的又一个很好的补充。现在最简单的方法可能是在rowConfig的headerConfig:rowConfig:{headerConfig:{getTitle:function(){return this.getValue()+'myCustomTitle';}}}}}中传入{u getTitle的实现。您是否推荐将卡片计数传递到变量中以替换'myCustomTitle'的最佳做法?我能够获得row对象的计数(如您上面所述),但无法从rowConfig:headerConfig访问。这是一个好问题。您可能需要使用Ext.ComponentQuery.query('rallycardboard')[0]对线路板组件进行全局查找,然后从那里开始。正如您所发现的,这个组件有一些改进的机会,但至少您现在可以解决大部分问题。。。