Sapui5 如何使用bindAggregation ui5将列添加到控制器中的表中

Sapui5 如何使用bindAggregation ui5将列添加到控制器中的表中,sapui5,Sapui5,我想要的是添加另一列数量 将它添加到列中不是问题,因为它是一个完整的JSON 但是把它放在行中有点问题——因为我从表中提取数据——产品——它们没有数量。 我想通过邀请在这里创建这个 关键是代码的形式是oTable.bindAggregation 这是我的代码: onValueHelpRequested:函数(){ var aCols=this.oColModel.getData().cols; this._oValueHelpDialog=sap.ui.xmlfragment(“Ztest.Z

我想要的是添加另一列数量 将它添加到列中不是问题,因为它是一个完整的JSON 但是把它放在行中有点问题——因为我从表中提取数据——产品——它们没有数量。 我想通过邀请在这里创建这个 关键是代码的形式是oTable.bindAggregation

这是我的代码:

onValueHelpRequested:函数(){
var aCols=this.oColModel.getData().cols;
this._oValueHelpDialog=sap.ui.xmlfragment(“Ztest.Ztest.view.ValueHelpDialogBasic”,this);
this.getView().addDependent(this.\u oValueHelpDialog);
这是._oValueHelpDialog.getTableAsync().then(函数(oTable){
oTable.setModel(window.orders);
oTable.setModel(this.oColModel,“columns”);
if(可旋转的.bindRows){
oTable.bindAggregation(“行”、“项”);
}
if(可旋转的.绑定项){
oTable.bindAggregation(“items”、“/items”、函数(){
返回新的ColumnListItem({
单元格:aCols.map(函数(列){
返回新标签({text:“{”+column.template+“}”);
})
});
});
}
这是._oValueHelpDialog.update();
}.约束(这个);
this.\u oValueHelpDialog.setTokens(this.\u oMultiInput.getTokens());
这是._oValueHelpDialog.open();
},
我在这里有一个控件可以将步骤输入插入每一行吗? 我指的是这样的事情:
您的表仅由带标签的行组成,因为您的
ColumnListItem
的单元格是这样创建的。如果您希望添加其他内容,则需要调整工厂功能。例如:

返回新的ColumnListItem({
单元格:aCols.map(函数(列){
如果(){
返回新的步骤输入(…);
}否则{
返回新标签({text:“{”+column.template+“}”);
}
})
});

因为如果(oTable.bindItems)由于oTable.setModel(this.oColModel,“columns”)而执行操作,则无法登录第二个; 我做得很好

 I have created value help

`

但是如果(oTable.bindItems)由于oTable.setModel(this.oColModel,“columns”);而被删除,它将无法第二次登录;?我该怎么做呢?
`onValueHelpRequested: function() {
            var aCols = this.oColModel.getData().cols;
            this._oValueHelpDialog = sap.ui.xmlfragment("Ztest.Ztest.view.ValueHelpDialogBasic", this);
            this.getView().addDependent(this._oValueHelpDialog);

            this._oValueHelpDialog.getTableAsync().then(function (oTable) {
                oTable.setModel(window.orders);
                oTable.setModel(this.oColModel, "columns");
                 var oColumn = new sap.ui.table.Column({
                        label: new sap.m.Label({text: "Qty"}),
                        template: new sap.m.StepInput({value: "{Qty}"}),
                        width: "70px",
                        step:"1",
                        largerStep:"1",
                        max:"35",
                        min:"0",
                        stepMode:"Multiple" 
                });

                if (oTable.bindRows){
                    oTable.addColumn(oColumn);
                    oTable.bindAggregation("rows", "/Items");
                }

                /*if (oTable.bindItems) {
                        oTable.bindAggregation("items", "/Items", function () {
                        return new ColumnListItem({
                                 cells: aCols.map(function (column) {
                                 console.log(column);
                                    if (column.template=="Qty") {
                                        return new StepInput({ text: "{" + column.template + "}" });
                                    } else {
                                        return new Label({ text: "{" + column.template + "}" });
                                    }
                                })
                        });
                    });
                }*/
                this._oValueHelpDialog.update();
            }.bind(this));

            this._oValueHelpDialog.setTokens(this._oMultiInput.getTokens());
            this._oValueHelpDialog.open();
        },