以编程方式更改应用设置的自定义应用需要发送一些更新事件吗?

时间:2014-01-24 23:00:03

标签: rally

我几乎完成了一个显示PortfolioItem / Features网格的自定义应用程序,然后显示与网格中所选要素关联的用户故事的看板。我使用应用程序目录中的看板作为此自定义应用程序的基础。

由于看板板本身的插件看起来有点复杂,我过滤故事的方法是以编程方式将查询设置设置为(Feature.FormattedID =“F1234”)。我首先必须在示例的Settings.js中为查询设置添加一个名称:

            {
                name: 'query',
                type: 'query'
            }

之前只有type属性。

然后我将一个函数挂钩到我的要素网格的选择事件,使用应用程序级别提供的方法将“查询”设置设置为所需的字符串:

...

    this.updateSettingsValues({
        settings: {
            query: qString
        },
        success: function() {
            console.log("Query setting changed");
        },
        scope: this
    });

当我在网格中选择一项功能时,我会看到显示成功的日志条目,但看板网格内容不会更改。如果我在做出选择后打开设置UI,我会在“查询”设置文本框中看到预期的查询字符串。如果我单击“保存”按钮而不更改任何其他内容,则看板会按预期正确更新,仅显示所需的用户故事。

我已经检查了设置的文档,并且描述了Bare Metal部分下的updateSettingsValues()的条目没有提到要触发的任何事件,导致设置更改实际应用于应用程序,我在关于我想要做哪个事件的损失。我认为我只是远离自定义应用程序荣耀的一段诱人的代码......

1 个答案:

答案 0 :(得分:1)

听起来很酷!你将很快在Rally应用程序历史记录中永生。您需要做的就是触发电路板的刷新。查看Rally.ui.cardboard.CardBoard.refresh方法:

cardboard.refresh({
    storeConfig: {
        filters: [
            Rally.data.wsapi.Filter.fromQueryString(qString)
        ]
    }
});