bricks/docs/cn/descjson.md

32 lines
1.7 KiB
Markdown
Raw Normal View History

2023-12-18 18:15:22 +08:00
# 创建控件的Json文件格式说明
2024-05-13 12:47:08 +08:00
Bricks在服务器端使用Json文件格式存储控件描述文件前端获得json文件后转化为json对象并用此json对象调用widgetBuild函数创建Bricks控件。
2023-12-18 18:15:22 +08:00
控件描述json文件必须含有“widgettype” 和”options“两个属性。“subwidgets”属性用来定义此控件包含的子控件。“binds”用于定义此控件或其子控件的事件处理
2024-05-13 14:34:07 +08:00
## id
id是一个可选项定义控件的id 缺省不定义控件id bricks提供根据控件id查找控件的机制详情请看[控件id](widgetid.md)
2023-12-18 18:15:22 +08:00
## widgettype说明
widgettype是一个字符串属性。其值为Bricks中的所有控件类型或"urlwidget"
2024-05-13 12:47:08 +08:00
可用的控件类型可以在[控件类型清单](widgets.md)中查找
2023-12-18 18:15:22 +08:00
## options
对象类型每个控件有特定的options属性清参看每个控件的说明
## subwidgets
数组类型数组中的每个元素必须是一个对象类型数据与desc作用一样。
参见widgetBuild函数的desc说明
## binds
2024-05-13 15:11:50 +08:00
列表属性,定义控件的事件处理,在列表中的每一项,定义一个事件处理, Bricks支持5种事件处理方法
分别是urlwidget, method, script, registedfunction和event
在binds中这五种事件处理方法都可以定义在同一个控件中可以灵活的使用不同事件处理方法来响应不同控件的不同事件
支持:
* 可定义bings所在控件的事件处理
* 可定义binds所在控件的子控件的事件处理
* 可定义应用控件树上任何wid对应的控件的事件处理
* 同一个控件的同一个事件,使用多个处理方法按定义顺序依次处理
详细事件处理请参看[bricks的事件处理](event.md)
2023-12-18 18:15:22 +08:00