sap.m.Table 中的多个项目路径

Multiple items path in sap.m.Table

在 Table 的 属性 项中,我设置了我的路径:

 items="{path: 'model>/elements/idStabMagTable/elements/'}">

现在我想要映射两个不同的模型(model 数据和 enable 管理行的类型)

            <items>
                <ColumnListItem type="{enable>row_enable}"> //"Navigation" or none
                    <cells>
                        <Text text="{model>society/description}"/>

                      ...

                    </cells>
                </ColumnListItem>
            </items>

这是我的模型model:

"idTable": {
      "elements": [
        {
          "language": {
            "code": "01",
            "description": "ITALIANO"
          },
          "scheda": "rome"
        },
        {
          "language": {
            "code": "04",
            "description": "TEDESCO"
          },
          "scheda": "berlino"
        }
      ]
    }

这是我的模特enable

"idTable": {
      "elements": [
        {
          "language": true,
          "scheda": true,
          "_row": true
        },
        {
          "language": false,
          "scheda": false,
          "_row": false
        }
      ]
    }

我将两个模型保存到两个不同的文件中,并将其管理到两个不同的 JSONModel 中。 现在我想在每一行中设置第一个模型的值和第二个模型的启用信息

但是在项目路径中我只能映射一条路径!我可以映射两个模型吗? (modelenable)

我找到了解决办法! 它工作正常,允许我维护不同的模型。

如果在 Table(或列表)中,我的元素有这条路径:

items="{path: 'model>/elements/idStabMagTable/elements/'}">

如果我想绑定一个属性在我写的ColumnListItem中的model模型

<Text text="{model>society/description}"/>

如果我有第二个模型 enablemodel 模型的 SAME STRUCTURE 我可以映射相同的 属性 但在enable 此模式下的模型:

<Text text="{parts:[{path:'model>society'}], formatter:'ui5bp.Formatter.elementEnable'}"/>

这是我的格式化函数:

 elementEnable: function (oEl) {
        var sPath = this.getBindingInfo("text").binding.oContext.sPath;
        var sProperty = this.getBindingInfo("text").parts[0].path;
        sPath=sPath+"/"+sProperty;
        var oEnableModel= ui5bp.products.getModel("enable"); //same path, different model
        var oValueEnable=oEnableModel.getProperty(sPath);
       return oValueEnable;
    }