o列更改后调用数据服务

问题描述 投票:0回答:1

简短地说:我有一个绑定到 oData 服务的智能表。这很好用。 但是,当我向视图添加新列时,oData 服务会再次被调用。 之前已经填充了这些列,因此无需再次致电。

有机会避免这种行为吗?

谢谢斯文

odata sapui5
1个回答
0
投票

再次调用该服务,因为 SmartTable 在调用中添加了

$select
参数,仅请求您默认看到的列。因此,如果您使一个隐藏列可见,则需要额外调用来获取该列。

您可能会尝试使用

One-time
绑定来绑定 SmartTable,但随后所有行也会被获取。

您还可以使用

beforeRebind
事件在搜索参数上添加属性。

onBeforeRebindTable: function(oEvent) {
    var oBindingParams = oEvent.getParameter("bindingParams");
    if (oBindingParams.parameters.select.search("PropertyFoo") < 0) {
        oBindingParams.parameters.select += ",PropertyFoo";
    }

另请参阅 SmartTable FAQ 中的问题 7 - 如何获取不属于列/绑定 (select = 'ColA,ColB,foo,bar') 一部分的自定义列(图标、格式化程序等)的数据SmartTable 控件?

© www.soinside.com 2019 - 2024. All rights reserved.