WSwitch 组件
开关组件,基于 WinDesignNext Switch 封装,用于两种状态之间的切换,支持 modelValue 数据绑定和 action 事件响应。
基础用法
API
| 属性 | 类型 | 说明 |
|---|---|---|
component | string | 固定为 WSwitch |
modelValue | DataBindingValue | 开关状态,支持 path 双向绑定 |
activeValue | boolean | string | number | DataBindingValue | 开启时的值,默认 true |
inactiveValue | boolean | string | number | DataBindingValue | 关闭时的值,默认 false |
activeText | string | DataBindingValue | 开启时显示文字 |
inactiveText | string | DataBindingValue | 关闭时显示文字 |
disabled | boolean | 是否禁用 |
loading | boolean | 是否加载中 |
size | string | 尺寸:large / default / small / mini |
inlinePrompt | boolean | 文字显示在开关内部 |
action | Action | 状态变化事件 |
path 支持说明
| 属性 | path 支持 | 说明 |
|---|---|---|
modelValue | ✅ | 开关状态双向绑定 |
activeValue | ✅ | 动态配置开启值 |
inactiveValue | ✅ | 动态配置关闭值 |
activeText | ✅ | 动态配置开启文字 |
inactiveText | ✅ | 动态配置关闭文字 |
modelValue 数据绑定
布尔值绑定:
json
{ "modelValue": { "path": "/enabled" } }自定义开关值(如 Y/N):
json
{
"activeValue": "Y",
"inactiveValue": "N",
"modelValue": { "path": "/notifyFlag" }
}action 定义
json
{
"action": {
"event": {
"name": "onEnabledChange",
"type": "change",
"context": [{ "key": "enabled", "value": { "path": "/enabled" } }]
}
}
}数据同步机制
- Agent 定义组件并设置
modelValue.path - Agent 通过
updateDataModel初始化开关状态 - 用户切换后,渲染器自动
setData写回 dataModel - 配置了
action时触发 A2UI 事件
使用场景
| 场景 | 推荐配置 |
|---|---|
| 功能启用/停用 | 默认 true/false + modelValue.path |
| 是/否标志位 | activeValue: "Y", inactiveValue: "N" |
| 带文字说明 | activeText + inactiveText |
| 动态文案 | activeText/inactiveText 使用 path 绑定 |
注意事项
- 绑定值类型需与
activeValue/inactiveValue一致 - A2UI JSON 不支持
beforeChange等函数属性 - 默认
change事件触发 dataModel 同步