0

我正在 Rally 中创建一个自定义网格,以在我的项目中创建一个投资组合项目表。我试图公开的一个字段是计划开始日期。按原样使用时,它以以下格式返回日期时间 - “YYYY-MM-DDTHH:MM:SS.xxxZ”。我一直在尝试使用 rally.sdk.util.DateTime.format(date(), "yyyy-MM-dd") 函数在创建我的 rowInfo 名称/值对时返回日期而不是全部内容添加到我的表中,但它不起作用。

有任何想法吗?

var tbCfgTable = {
    columns: [{  
        key: 'ID',  
        width: "20%"  
    },{
        key: 'Name',
        width: "4%"
    },{
        key: 'Planned Start',
        width: "4%"
    },{
        key: 'Planned End',
        width: "3%"
    }]
};
gTable = new rally.sdk.ui.Table(tbCfgTable);

var nbrPis = theResults.pisQueryKey.length;
for (var ndx = 0; ndx < nbrPis; ndx++){
    aPi = theResults.pisQueryKey[ndx];
    // populate planned schedule rows
    aRowInfo = {
            'ID': aPi.Name,
            'Name': aPi.Name,
            'Planned Start': aPi.PlannedStartDate,
            'Planned End': aPi.PlannedEndDate
            };
    gTable.addRow(aRowInfo);
}
4

1 回答 1

0

你真的很接近了——你需要做的就是首先将日期字符串解析为日期对象,然后对其进行格式化。

//function to format date
function formatDate(dateString) {
    if(!dateString) { return ''; }

    return rally.sdk.util.DateTime.format(
        rally.sdk.util.DateTime.fromIsoString(dateString, true), 'yyyy-MM-dd');
}

//build your table rows as usual, calling formatDate for each date field
aRowInfo = {
    'ID': aPi.Name,
    'Name': aPi.Name,
    'Planned Start': formatDate(aPi.PlannedStartDate),
    'Planned End': formatDate(aPi.PlannedEndDate)
};
于 2012-11-20T05:23:51.667 回答