熟练运用Dorado对象的get和set

Dorado对象的get和set方法提供了很多实用的小技巧,善用这些技巧可以事半功倍。并且以下的这些技巧可以自由的搭配使用,以便于让get和set在各种复杂的场景中发挥出最大的功效。

使用批量set

3.png

使用迭代式的get和set

get和set方法都支持迭代式的属性访问,即通过”.“来分割一组属性名,交由此方法一层层向下挖掘并返回最终结果或设置目标属性。

当进行迭代式的读取时,系统会自动判断前一个属性返回的对象是dorado.AttributeSupport的实例还是普通JSON对象,并藉此决定如何进一步执行读取操作:

• 如果碰到的中间对象dorado.AttributeSupport的实例,系统会自动读取它的Attribute

• 如果碰到的中间对象是普通的JSON对象,系统会直接读取它的属性。

4.png

运用某些对象为get方法提供的特殊扩展

Dorado中的某些对象为get方法提供了特殊的扩展,通过这些扩展我们甚至可以访问一些对象的Attribute之外的功能,这写扩展进一步Dorado的开发体验。

• View

当属性名以'#'开头时,Dorado会将其后的内容识别为控件的id。表示根据此id获取相应的控件。
当属性名以'^'开头时,Dorado会将其后的内容识别为对象的tag。表示根据此tag获取相应的对象。
当属性名以'@'开头时,Dorado会将其后的内容识别为DataType的name。表示根据此name获取相应的DataType。

• DataType

当属性名以'@'开头时,Dorado会将其后的内容识别为其中某个PropertyDef的name。表示根据此name获取相应的PropertyDef。

• DataSet

当属性名以'data:'开头时,Dorado会将其后的内容识别为datapath。表示利用该datapath调用此DataSet的queryData()方法。

以上这些特殊的扩展并不妨碍迭代式get和set调用。例如下面的用法是有效的。

5.png

利用set为对象绑定事件

set方法不但可以用于为对象的属性赋值,同时也可以用于为对象中的事件添加事件监听器。

6.png

Back to top