diff --git a/package.json b/package.json index e62297128..70701c9be 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "lint": "vsh lint", "postinstall": "pnpm -r run stub --if-present", "preinstall": "npx only-allow pnpm", - "prepare": "pnpm exec lefthook install", + "prepare": "is-ci || pnpm exec lefthook install", "preview": "turbo-run preview", "publint": "vsh publint", "reinstall": "pnpm clean --del-lock && pnpm install", diff --git a/packages/@core/ui-kit/form-ui/src/form-render/form-field.vue b/packages/@core/ui-kit/form-ui/src/form-render/form-field.vue index af831cce4..69a98ee8c 100644 --- a/packages/@core/ui-kit/form-ui/src/form-render/form-field.vue +++ b/packages/@core/ui-kit/form-ui/src/form-render/form-field.vue @@ -177,15 +177,15 @@ const computedProps = computed(() => { // 自定义帮助信息 const computedHelp = computed(() => { - return help ? onHelpFunc : undefined; -}); - -const onHelpFunc = () => { - if (!help) { + const helpContent = help; + if (!helpContent) { return undefined; } - return isFunction(help) ? help(values.value, formApi!) : help; -}; + return () => + isFunction(helpContent) + ? helpContent(values.value, getFormApi()) + : helpContent; +}); watch( () => computedProps.value?.autofocus, diff --git a/packages/effects/common-ui/src/components/json-viewer/index.vue b/packages/effects/common-ui/src/components/json-viewer/index.vue index 415e0c798..97a69ad89 100644 --- a/packages/effects/common-ui/src/components/json-viewer/index.vue +++ b/packages/effects/common-ui/src/components/json-viewer/index.vue @@ -12,7 +12,7 @@ import type { import { computed, useAttrs } from 'vue'; // @ts-expect-error - vue-json-viewer does not expose compatible typings for this import path -import VueJsonViewer from 'vue-json-viewer'; +import VueJsonViewerImport from 'vue-json-viewer'; import { $t } from '@vben/locales'; @@ -42,6 +42,11 @@ const emit = defineEmits<{ valueClick: [value: JsonViewerValue]; }>(); +/** CJS/UMD 在 Vite 下解析为 { default: Component },需解包否则会出现 missing template or render */ +const VueJsonViewer = + (VueJsonViewerImport as { default?: typeof VueJsonViewerImport }).default ?? + VueJsonViewerImport; + const attrs: SetupContext['attrs'] = useAttrs(); function handleClick(event: MouseEvent) { diff --git a/playground/src/views/examples/form/basic.vue b/playground/src/views/examples/form/basic.vue index 4474df943..d8fde4645 100644 --- a/playground/src/views/examples/form/basic.vue +++ b/playground/src/views/examples/form/basic.vue @@ -287,7 +287,9 @@ const [BaseForm, baseFormApi] = useVbenForm({ component: 'DatePicker', fieldName: 'datePicker', help: (values) => - [`这是一个可输出其他字段值的帮助信息${values?.rate}`].map((v) => h('p', v)), + [`这是一个可输出其他字段值的帮助信息${values?.rate}`].map((v) => + h('p', v), + ), label: '日期选择框', }, { diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index de80ea01b..e0e06ded1 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -187,4 +187,3 @@ catalog: yaml-eslint-parser: ^2.0.0 zod: ^3.25.76 zod-defaults: 0.1.3 - diff --git a/scripts/deploy/Dockerfile b/scripts/deploy/Dockerfile index 86f439f24..862673c1c 100644 --- a/scripts/deploy/Dockerfile +++ b/scripts/deploy/Dockerfile @@ -5,6 +5,7 @@ ENV PNPM_HOME="/pnpm" ENV PATH="$PNPM_HOME:$PATH" ENV NODE_OPTIONS=--max-old-space-size=8192 ENV TZ=Asia/Shanghai +ENV CI=true RUN npm i -g corepack