"path"、"type"、"formatOptions"、"constraints"代表什么作为数据绑定属性

What do "path", "type", "formatOptions", "constraints" stand for as data binding attributes

我正在阅读有关 data binding syntax (SAPUI5) 的教程。下面是数据绑定到 oData 模型的示例:

    <Input value="{
                    path: '/number',
                    type: 'sap.ui.model.type.Integer',
                    formatOptions: {
                                     minIntegerDigits: 3
                                   },
                    constraints: {
                                   maximum: 1000
                                 }
                  }"/>

所以,问题是:"path"、"type"、"formatOptions"、"constraints" 代表什么?我的意思是,我意识到 - 这些是一些绑定属性。 Input控件的值属性是一个字符串。因此,绑定属性将在控件内部的某处进行解析和解释,但它们在语义上不是控件的一部分。那么,它是一些 oData syntax/attributes 还是什么?你知道我在哪里可以找到所有可能的选项吗?

属性绑定

属性 绑定允许控件的属性从模型数据中自动初始化和更新。

要在控件上定义 属性 绑定,存在以下两个选项:

  1. 在控件的settings对象的构造函数中
  2. 使用控件的bind属性方法

定义 属性 绑定后,每次更改绑定模型 属性 值时,属性 都会自动更新。

定义 属性 绑定最方便的方法是在设置对象中将大括号内的绑定路径作为字符串文字包含在内:

var oTextField = new sap.ui.commons.TextField({
    value: "{/company/name}"
});

或者(我想这就是您所要求的),您可以对 属性 绑定使用扩展语法。此扩展语法允许您定义要包含在设置对象中的附加绑定信息,例如格式化程序函数。在这种情况下,您使用 JS 对象而不是字符串文字。 这必须包含路径 属性 包含绑定路径并且可以包含其他属性:

var oTextField = new sap.ui.commons.TextField({ 价值: { 路径:“/company/name”, 模式:sap.ui.model.BindingMode.OneWay, 格式化程序:.myFormatterFn } }); 这将触发控制器上的 myFormatterFn 函数,返回值将附加到 textFiled。

而不同的类型可以是以下之一:

  • sap.ui.model.type.Boolean
    class 表示布尔简单类型。

  • sap.ui.model.type.Currency
    这个class表示货币复合类型

  • sap.ui.model.type.Date
    class 表示日期简单类型。

  • sap.ui.model.type.Date区间
    这个class表示日期区间复合类型。

  • sap.ui.model.type.Date时间
    class 表示日期时间简单类型。

  • sap.ui.model.type.Date时间间隔
    这个class表示DateTime区间复合类型。

  • sap.ui.model.type.FileSize
    这个class表示文件大小简单类型。

  • sap.ui.model.type.Float
    这个 class 表示 float 简单类型。

  • sap.ui.model.type.Integer
    此 class 表示整数简单类型。

  • sap.ui.model.type.String 这个class表示字符串简单类型。

  • sap.ui.model.type.Time
    这个class表示时间简单类型。

  • sap.ui.model.type.Time区间
    这个class表示时间间隔复合类型

  • sap.ui.model.type.Unit
    这个class表示Unit复合类型

可以在构造函数中为每个SimpleType生成如下参数:

格式选项:格式选项定义值在 UI 中的格式和显示方式。

约束条件:约束条件是可选的,用于定义在 UI 中输入的输入值的外观。在解析期间,将根据这些约束验证值。例如,String 类型有 maxLength 和 minLength 的约束,在解析输入值时会自动验证它们。

请检查 this doc ,它可能会阐明您的问题

根据给定的类型,可能会有不同的约束和格式选项。在你的例子中,类型是 integer/number.

通用 属性 绑定的可能参数在摘要中定义 class sap.ui.base.ManagedObject

整数类型的可能约束和格式选项在 class sap.ui.model.type.Integer.

中定义

数字(以及整数)的可能格式选项在 class sap.ui.core.format.NumberFormat.

中定义