SAPUI5 - FilterBar - setVisible 不工作
SAPUI5 - FilterBar - setVisible not working
我正在对一个项目使用 sap.ui.comp.filterbar.FilterBar
控制。一切正常,除非我试图隐藏此控件。
var oFilterBar = new sap.ui.comp.filterbar.FilterBar("filterBar",{
reset: oController.handleOnReset,
search: oController.handleOnSearch,
showRestoreOnFB: true,
showClearOnFB: true,
showRestoreButton: true,
showClearButton: true,
...
});
oFilterBar.setVisible(false);
我收到以下错误:
Uncaught TypeError: oFilterBar.setVisible is not a function
因为这个 属性 是从 sap.ui.core.Control class 继承的,所以这应该可以工作,我认为它也与版本无关(我使用的是 1.24)。
与版本有关。
在 SAPUI5 1.28[1] 中,属性 visible
被移动到 sap.ui.core.Control
因此任何扩展它的控件也将具有此 属性。
如果您只使用较早版本的控件,可以使实现此 属性 的控件本身不可见。
但是您可以扩展您正在使用的控件以包含此 属性:
sap.ui.comp.filterbar.FilterBar.extend("my.FilterBar", {
metadata: {
properties: {
visible: {
type: "boolean",
group: "Appearance"
}
}
},
renderer: function (oRm, oControl) {
if (oControl.getVisible()) {
sap.ui.comp.filterbar.FilterBarRenderer.render(oRm, oControl);
} else {
// Handle invisibility
}
}
});
我正在对一个项目使用 sap.ui.comp.filterbar.FilterBar
控制。一切正常,除非我试图隐藏此控件。
var oFilterBar = new sap.ui.comp.filterbar.FilterBar("filterBar",{
reset: oController.handleOnReset,
search: oController.handleOnSearch,
showRestoreOnFB: true,
showClearOnFB: true,
showRestoreButton: true,
showClearButton: true,
...
});
oFilterBar.setVisible(false);
我收到以下错误:
Uncaught TypeError: oFilterBar.setVisible is not a function
因为这个 属性 是从 sap.ui.core.Control class 继承的,所以这应该可以工作,我认为它也与版本无关(我使用的是 1.24)。
与版本有关。
在 SAPUI5 1.28[1] 中,属性 visible
被移动到 sap.ui.core.Control
因此任何扩展它的控件也将具有此 属性。
如果您只使用较早版本的控件,可以使实现此 属性 的控件本身不可见。
但是您可以扩展您正在使用的控件以包含此 属性:
sap.ui.comp.filterbar.FilterBar.extend("my.FilterBar", {
metadata: {
properties: {
visible: {
type: "boolean",
group: "Appearance"
}
}
},
renderer: function (oRm, oControl) {
if (oControl.getVisible()) {
sap.ui.comp.filterbar.FilterBarRenderer.render(oRm, oControl);
} else {
// Handle invisibility
}
}
});