diff --git a/assets/admin/src/components/form/AksField.vue b/assets/admin/src/components/form/AksField.vue index adf0a8c5..ef2e7636 100644 --- a/assets/admin/src/components/form/AksField.vue +++ b/assets/admin/src/components/form/AksField.vue @@ -948,6 +948,12 @@ function updateRepeaterItem(index, fieldKey, value) { line-height: 1.6; } +.aksrt-field__content :deep(ul) { + margin: 0; + padding-left: 18px; + line-height: 1.9; +} + /* Mobile */ @media (max-width: 768px) { .aksrt-field__link, diff --git a/assets/admin/src/components/form/AksFormRenderer.vue b/assets/admin/src/components/form/AksFormRenderer.vue index 61e0c382..921bd3c6 100644 --- a/assets/admin/src/components/form/AksFormRenderer.vue +++ b/assets/admin/src/components/form/AksFormRenderer.vue @@ -248,16 +248,21 @@ function isGroupVisible(group) { return matchDependsOn(group.dependsOn) } +/** + * expandWhen 与 dependsOn 同语法(表单 key 字符串或规则对象),规则成立时分组默认展开。 + * 下拉值如 'null' 也是真值,所以按选项判断的分组要写规则对象,不能只写 key。 + */ +function isGroupExpanded(group) { + return matchDependsOn(group.expandWhen) +} + /** * Collapse preference for a group. - * - expandWhen: form key; when truthy, start expanded (channel just enabled → open form) + * - expandWhen: rule; when matched, start expanded (channel just enabled → open form) * - defaultCollapsed: static default */ function resolveGroupCollapsed(group) { - if (group.expandWhen) { - const on = !!props.formData?.[group.expandWhen] - return !on - } + if (group.expandWhen) return !isGroupExpanded(group) return !!group.defaultCollapsed } @@ -265,7 +270,7 @@ function resolveGroupCollapsed(group) { function groupKey(group) { const base = group.key || group.title || 'group' if (group.expandWhen) { - return `${base}:${props.formData?.[group.expandWhen] ? 'on' : 'off'}` + return `${base}:${isGroupExpanded(group) ? 'on' : 'off'}` } return base } diff --git a/assets/admin/src/pages/users/UsersBadge.vue b/assets/admin/src/pages/users/UsersBadge.vue index cc05e113..a8896501 100644 --- a/assets/admin/src/pages/users/UsersBadge.vue +++ b/assets/admin/src/pages/users/UsersBadge.vue @@ -1,9 +1,6 @@