如何通过将字段绑定到多个依赖项来显示基于 alpaca 或条件的相同字段
How to show same field based on an or condition on alpaca by binding a field to multiple dependencies
我正在使用 alpajajs 呈现 HTML 表单。我的要求是根据复选框显示某些字段。我的表单中有三个复选框,如果选中任何复选框,我想显示一些字段。
我在 conditional dependencies and couldn't find a soution to my problem. I can solve this by creating same fields with different names but that's against dry principle 浏览了羊驼文档。
我的代码如下所示。
"myCheckBox1": {
"type": "boolean"
},
"myCheckBox2": {
"type": "boolean"
},
"usernameField": {
"label": "Username *",
"order": 6,
"type": "string"
"disallowOnlyEmptySpaces": true,
"showMessages": false,
"disallowEmptySpaces": true,
}
如果选中了 myCheckBox1 或 myCheckBox2,我想显示 usernameField。我更改了架构以显示条件依赖性。
"dependencies": {
"usernameField": [
"myCheckBox1"
],
"usernameField": [
"myCheckBox2"
]
}
但是只考虑最后给定的条件,即只有当 myCheckBox2 被选中时才会显示 usernameField,而不考虑 myCheckBox1。我也试过下面的代码:
"dependencies": {
"usernameField": [
"myCheckBox1", "myCheckBox2"
]
}
但是计算结果为 and condition
。有没有办法使用不同的依赖项来显示相同的字段?
为什么不使用一组使用枚举类型的复选框,如下所示:
// schema
"check": {
"title": "Select...",
"type": "string",
"enum": ["First", "Second"]
},
...
// options
"check": {
"type": "checkbox"
}
然后你使用这样的条件依赖:
"username": {
"dependencies": {
"check": [
'First', // if First is selected
'Second', // if Second is selected
'First,Second' // if both First and Second are selected
]
}
}
这是一个有效的 fiddle。
如果这不是您要找的,请告诉我。
我正在使用 alpajajs 呈现 HTML 表单。我的要求是根据复选框显示某些字段。我的表单中有三个复选框,如果选中任何复选框,我想显示一些字段。
我在 conditional dependencies and couldn't find a soution to my problem. I can solve this by creating same fields with different names but that's against dry principle 浏览了羊驼文档。
我的代码如下所示。
"myCheckBox1": {
"type": "boolean"
},
"myCheckBox2": {
"type": "boolean"
},
"usernameField": {
"label": "Username *",
"order": 6,
"type": "string"
"disallowOnlyEmptySpaces": true,
"showMessages": false,
"disallowEmptySpaces": true,
}
如果选中了 myCheckBox1 或 myCheckBox2,我想显示 usernameField。我更改了架构以显示条件依赖性。
"dependencies": {
"usernameField": [
"myCheckBox1"
],
"usernameField": [
"myCheckBox2"
]
}
但是只考虑最后给定的条件,即只有当 myCheckBox2 被选中时才会显示 usernameField,而不考虑 myCheckBox1。我也试过下面的代码:
"dependencies": {
"usernameField": [
"myCheckBox1", "myCheckBox2"
]
}
但是计算结果为 and condition
。有没有办法使用不同的依赖项来显示相同的字段?
为什么不使用一组使用枚举类型的复选框,如下所示:
// schema
"check": {
"title": "Select...",
"type": "string",
"enum": ["First", "Second"]
},
...
// options
"check": {
"type": "checkbox"
}
然后你使用这样的条件依赖:
"username": {
"dependencies": {
"check": [
'First', // if First is selected
'Second', // if Second is selected
'First,Second' // if both First and Second are selected
]
}
}
这是一个有效的 fiddle。
如果这不是您要找的,请告诉我。