更改视图后修改CSS样式

2020-09-24 00:54发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)亲爱的 我想操纵树形表并更改某...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


亲爱的

我想操纵树形表并更改某些行的背景色。 但是,我发现它按以下顺序工作:

  1. 背景颜色变为蓝色
  2. 删除列,插入部分
  3. 背景颜色变回白色

我该怎么办?

下面是我的代码:

 this.oTreeTable.removeColumn(4);
 this.oTreeTable.removeColumn(3);
 this._oSection = sap.ui.xmlfragment(oView.getId()," sap.ui.scpint.precheck.view.fragment.EditVariantBasic",此);
 oView.byId(" ObjectPageLayout")。insertSection(this._oSection,0);
 var aRows = this.oTreeTable.getRows();
 aRows.forEach(function(row){
 var sPath = row.getBindingContext()。getPath();
 var oModel = that.oTreeTable.getModel();
 var oData = oModel.getProperty(sPath);
 if(oData.SELECTED){
 row。$()。css('background-color','#e8eff6');
 }
 });
 
4条回答
小c菟菟
2020-09-24 01:03

很好。 然后,您知道这是一个异步问题。 就个人而言,如果不将其用于IE,我会做出承诺。 如果必须在IE中使用它,则需要另一个lib来保证工作。 IE不支持ES6标准。 边缘很好。 一个承诺将等待运行代码,直到它获取数据:

 somFuncName:function(){
 返回新的Promise(function(resolve,reject){
    //使api调用eks,缺少一些代码:
     oModel.read(sPath,null,null,true
 函数(oData){
                    //如果我们得到200,则解决。
 resolve(oData);
 },
 函数(oError){
                  //如果从服务器收到错误,则拒绝并发送错误
 reject(oError);
 });
 });
 } 

然后您可以这样称呼它:

                    //然后在接收数据后将运行
 this.someFuncName()。then(function(oData){
     console.log(oData)
 })

 测试并查看其工作方式的一种好方法是将oModel.read包装在setTimeout中。

一周热门 更多>