嵌套表达式绑定的语法 [SAPUI5]

Syntax for a nested expression binding [SAPUI5]

我想根据两种不同条件的测试来设置可见性。它必须满足以下测试。

我要测试的东西:

  1. 姓名 !== ''
  2. and 名称不为空 AND
  3. nr === 13;
  4. nr === 14;

语法:

<Button visible="{= {${modelExample>name} !== '' &amp;&amp ${modelExample>name} !== null} &amp;&amp; {${modelExample>nr} === 13 || ${modelExample>nr} === 14 } ? true: false}"

问题:它确实给出了一个错误。

问题:这个条件的合适语法是什么。甚至可以测试两种不同的东西吗?

表达式绑定的可读性有点... 如果您的情况变得复杂,请使用格式化程序。(IMO 更好的可读性)


Expression Binding

JSONModel

    this.getView().setModel(new JSONModel({
                name: "",
                nr: 10
            }), "json");

XML

<Button text="test" visible="{= ${json>/name} &amp;&amp; (${json>/nr} === 13 || ${json>/nr} === 14) ? true : false}"/>

Formatter

formatter.js

        myCond: function (sName, iNumber) {
            if (sName && (iNumber === 13 || iNumber === 14)) {
                return true;
            } else {
                return false;
            }
        }

XML

<Button text="test" visible="{ parts: ['json>/name', 'json>/nr'], formatter: '.formatter.myCond'}"/>