将新列添加到ui5上的现有表

时间:2017-10-26 11:32:20

标签: javascript sapui5

我正在尝试在某些条件下向myTable添加一个新列,但到目前为止我无法设法完成。 (我使用JS视图)

我有一个名为data的变量。

这是mycode

表;

var vergleichTable1 = new sap.m.Table(this.createId("vergleichTable1"), {
        columns: [
            new sap.m.Column({
                header: new sap.m.Label({
                    text: data[0].KURZNAME
                })
            }),
            new sap.m.Column({
                header: new sap.m.Label({
                    text: data[1].KURZNAME
                })
            }),
        ]
    }).addStyleClass("vergleichTable1");

如果我的data.length === 3我想在我的表格中添加另一列

我尝试过但没有用的是;

       if(data.length === 3){
            this.byId("vergleichTable1").addColumn({
                header: new sap.m.Label({
                        text: data[2].KURZNAME
                })
            });
        }

有人可能会帮忙吗?告诉我我正在做的错误?这个.addColumn()并没有真正起作用

我在View中进行了这些操作,但在.addColumn()中使用Controller并没有帮助

1 个答案:

答案 0 :(得分:3)

你应该在控制器中使用如下所示。

this.getView().byId("vergleichTable1").addColumn( new sap.m.Column({
                                  header: new sap.m.Label({
                                      text:"hi" //data[0].KURZNAME
                                  })
                              }));

你做错了是你没有在addColumn方法中传递sap.m.Column对象。