Property Binding: How to Concatenate String Literals and Binding Value

I have a StandardItemList in UI5 like this

new sap.m.StandardListItem({
    title: "{BOM/#text}",
    description: "Version: " + "{REVISION/#text}"
})

How can I achieve getting the description like "Version: ValueOfTheVersion"?

StandardListItem1

When I delete the word "Version" in the description it works very well.

StandardListItem2


To enable complex binding syntax, the recommended way is to add the bootstrap configuration option compatVersion with the value "edge". E.g. in index.html:

data-sap-ui-compatversion="edge"

This replaces the need for sap-ui-xx-bindingSyntax since "edge" sets the binding syntax automatically to "complex". Adding bindingSyntax makes only sense if the compatVersion is lower than "1.28". Options with xx should be avoided anyway because they're experimental.

With the complex binding syntax enabled, we can make use of

  • sap.ui.model.CompositeBinding which includes Expression Binding
  • as well as plain "{path: '...'}" syntax in XML UI definitions (views or fragments).

Thanks to Rahul!

Adding

data-sap-ui-xx-bindingSyntax="complex"

to the bootstrap in your index.html will do the trick

Full Solution

<script src="/sapui5/resources/sap-ui-core.js"
        id="sap-ui-bootstrap"
        data-sap-ui-xx-bindingSyntax="complex"
        data-sap-ui-libs="sap.m,sap.ui.layout,sap.ui.commons,sap.ui.table"
        data-sap-ui-theme="sap_bluecrystal">
</script>