Skip to content

引入组件 ​

局部引入

ts
// parent.vue
const FFormItem = defineAsyncComponent(() => import('@/components/formaui/f-form-item/f-form-item.vue'))

基础用法 ​

label 属性:标题文本

html
<f-form-item label="标题文本">
  <f-input padding="0" bg-color="transparent" :show-border-bottom="false" placeholder="文本输入框" />
</f-form-item>

右侧内容 ​

使用 #right 插槽展示右侧内容

html
<f-form-item label="内容居右">
  <template #right>
    <f-switch v-model="checked" />
  </template>
</f-form-item>

必填与选择 ​

isAsterisk 显示星号,showArrow + isHighlight 用于选择行

html
<f-form-item label="选择标题" is-asterisk show-arrow is-highlight @click="onSelect">
  <f-input padding="0" bg-color="transparent" :show-border-bottom="false" disabled placeholder="请选择" />
</f-form-item>

结合 f-form 校验 ​

prop 对应 model 字段;父级 f-form 的 isShowMessage 设为 false,错误信息显示在表单项上

html
<f-form ref="formRef" :model="formData" :is-show-message="false">
  <f-form-item label="姓名" is-asterisk prop="name">
    <f-input v-model="formData.name" padding="0" bg-color="transparent" :show-border-bottom="false" />
  </f-form-item>
</f-form>

错误位置 ​

errorPosition:1 标题左对齐,2 内容左对齐(默认),3 居右

html
<f-form-item label="身高" is-asterisk prop="height" :error-position="3">
  <f-input v-model="formData.height" padding="0" is-text-right :show-border-bottom="false" />
</f-form-item>

插槽 ​

名称说明
default标题后内容(水平排列时)
right右侧内容
row上下排列时自定义显示内容

属性 ​

名称类型说明默认值
paddingstring内边距28rpx 30rpx
marginTopstring上外边距0rpx
marginBottomstring下外边距0rpx
labelstring标题文本-
labelFontSizestring标题字体大小32rpx
labelColorstring标题颜色#0B1D4A
labelFontWeightnumber / string标题字重400
labelWidthstring标题宽度200rpx
labelPosition`left` | `top`标题位置left
labelRightstring标题距右侧内容间距16rpx
labelBottomstring标题下方间距0rpx
isAsteriskboolean是否显示星号false
asteriskColorstring星号颜色colors.danger
asteriskTopstring星号 top50%
asteriskLeftstring星号 left12rpx
bgColorstring背景色#fff
isHighlightboolean是否点击高亮false
showArrowboolean是否显示右侧箭头false
arrowColorstring箭头颜色var(--f-text-color-placeholder)
showBottomBorderboolean是否显示底部分割线true
showBorderboolean是否显示边框false
borderColorstring边框/分割线色var(--f-border-color)
lineLeftstring底部分割线距左0rpx
lineRightstring底部分割线距右0rpx
borderRadiusstring圆角0
indexnumber / string自定义参数,点击回传0
propstring表单域字段,校验时必填-
isAbsoluteboolean错误提示是否绝对定位true
errorPositionnumber / string错误位置:[1 标题左 / 2 内容左 / 3 右]2
rulesobject校验规则{}

事件 ​

事件名说明回调参数
click点击表单项{ index }

方法 ​

方法名说明传入参数
setRules设置校验规则rules
validate校验当前项(需在 f-form 内)value(可选)
clearValidate清除验证信息-