xml视图中的SAPUI5调用方法的模型

时间:2018-10-15 12:34:17

标签: sapui5

是否可以从模型中调用方法?

例如,我扩展了JSON模型并添加了一个名为hello_world的函数。

在我的XML视图中,我想从下面的控件中调用此模型的方法,并关闭事件:

 <Select change="{cl_vehicule>}.hello_world">
                    <items>
                        <core:Item text="1" key="1"/>
                        <core:Item text="2" key="2"/>
                    </items>
                </Select>

有可能吗?

如果可以,怎么办?

1 个答案:

答案 0 :(得分:1)

由于以下原因,这是不可能的:

1)Select控件中的 change 是一个事件,因此它必须与一个函数关联。这与调用函数不同。请注意,使用事件时,您不要在方法名称后添加()

2)在您的示例中, cl_vehicule 应该是控件和模型之间的关联名称。模特没有名字。在清单中或 setModel 方法调用中指定在数据绑定中置于>前面的名称。换句话说,同一模型可以与不同的控件关联,但使用不同的名称。

3)使用{}表示您正在对该方法使用方法bindProperty或bindAggregation。这些方法在ManagedObject类中定义。那些不能在事件中使用。

4)由于UI5使用MVC范例,因此视图绝不应该直接与模型联系


因此,您基本上应该使用 change 事件将其与控制器中的函数相关联。在该函数中,您有不同的方法来使扩展模型调用方法。