首页 > 其他分享 >uni-forms的使用-1.4.10版本

uni-forms的使用-1.4.10版本

时间:2024-03-06 13:34:50浏览次数:26  
标签:1.4 10 school rules errorMessage 校验 forms uni

【注意版本】

uni-forms 1.4.0 版本以后,很多用法和原来不一样。我使用的版本是 1.4.10 。

导入组件后:

  • 使用<uni-forms>包裹<uni-forms-item>,<uni-forms-item>包裹其她组件,如 uni-easyinput、uni-data-select 和 uni-app 内置的表单组件;
  • 每个要校验的表单项,不管input还是checkbox,都必须放在<uni-forms-item>组件中,且一个<uni-forms-item>组件只能放置一个表单项。
  • required 只负责显示 * ,不负责校验。必填项需要在校验rules中写   { required: true, errorMessage: '请输入title', } 
  • uni-forms 用 model属性绑定对象,rules 属性绑定校验规则,如  <uni-forms ref="form" :model="formData" :rules="rules"></uni-forms>   
  • uni-forms-item 需要设置 name 属性为当前字段名,name的值需要和内部组件绑定的属性值相同,如  <uni-forms-item label="学校" name="school" :label-width="100" required> <uni-easyinput v-model="formData.school" /> </uni-forms-item>  
  • rules 是对象,用 uni-form-item上绑定的name值(如school)定义一个新对象,属性为 {rules:[ {检验规则} ] } ,如 formRules: { school: { rules: [ { format: "string", errorMessage: '类型必须是 string', }, ] } } 
  • 表单校验时机:uni-forms 1.4.0 后,只有 uni-forms上可以配置 validateTrigger,不再支持单独控制每个子表单的校验时机  <uni-forms ref="form" :model="formData" :rules="formRules" validate-trigger="bind"></uni-forms> 

一个简单的使用例子如下:

<template>
    <view>
        <view class="info-container" v-for="item in formData">{{ item }}</view>
        <!-- ----------------------------------------------------------------------- -->
        <view class="form-container">
            <uni-forms ref="form" :model="formData" :rules="formRules" validate-trigger="bind">
                <uni-forms-item label="姓名" name="name" label-width="100px" required>
                    <uni-easyinput v-model="formData.name" />
                </uni-forms-item>
                <uni-forms-item label="年龄" name="age" :label-width="100" required>
                    <uni-easyinput v-model="formData.age" />
                </uni-forms-item>
                <uni-forms-item label="学校" name="school" :label-width="100" required>
                    <uni-easyinput v-model="formData.school" />
                </uni-forms-item>
            </uni-forms>
        </view>
    </view>
</template>

<script>
export default {
    data() {
        return {
            formData: {
                name: "姜南",
                age: 28,
                school: "清华大学"
            },
            formRules: {
                name: {
                    rules: [
                        {
                            required: true,
                            errorMessage: '请输入title',
                        },
                        {
                            minLength: 1,
                            maxLength: 5,
                            errorMessage: '{label}长度在 {minLength} 到 {maxLength} 个字符',
                        },
                    ],
                },
                age: {
                    rules: [
                        {
                            required: true,
                            errorMessage: '请输入age',
                        },
                        {
                            format: "number",
                            errorMessage: '类型必须是 number',
                        },
                        {
                            minimum: 1,
                            maximum: 100,
                            errorMessage: '年龄必须在 {minimum} 到 {maximum} 之间',
                        },
                    ]
                },
                school: {
                    rules: [
                        {
                            required: true,
                            errorMessage: '请输入school',
                        },
                    ]
                }
            },
        }
    },
    methods: {

    }
}
</script>

<style >
.info-container {
    display: inline-block;
    width: 30%;
    text-align: center;
    background-color: antiquewhite;
}

.form-container {
    padding: 10rpx;
    margin: 10rpx;
    border: 1rpx solid green;
}
/* 有scoped这里不生效 */
.uni-forms-item {
    background-color: yellow;
}
</style>

 运行结果:

 

标签:1.4,10,school,rules,errorMessage,校验,forms,uni
From: https://www.cnblogs.com/sunshine233/p/18056318

相关文章

  • 3121008942
    1.软件工程第一次作业这个作业属于哪个课程2021软件工程这个作业要求在哪里<作业要求的链接>这个作业的目标<写上具体方面>其他参考文献.....目录1.软件工程第一次作业2.评估当前的自己2.1个人信息2.2当前值2.2.1专业水平个人爱好的作品3.展望未来3.1阅......
  • 106. 从中序与后序遍历序列构造二叉树 c
    /***Definitionforabinarytreenode.*structTreeNode{*intval;*structTreeNode*left;*structTreeNode*right;*};*/structTreeNode*buidl_tree(int*inorder,inthead1,intn1,int*postorder,inthead2,intn2){if(n1<......
  • VSTO:WinForms如何引用Ribbon.Invalidate
    问题描述:近期项目需要在VSTO插件中设计WinForms界面,该界面需要实现一个功能:当WinForms从外部应用中获取数据后,将其传递到editbox显示栏内。项目开发中遇到以下问题:WinForms中实例化Ribbon后,再引用其中的函数或Invalidate功能,在运行时会报错:System.NullReferenceException:“未将......
  • 下一代积木式智能组装编排,集成开发效率10倍提升
    理论+实战揭秘下一代组装式融合集成平台架构和核心技术,让开发者快速了解低代码智能集成开发趋势和下一代技术。本期直播主题《下一代积木式智能组装编排,集成开发效率10倍提升》,华为云DTSE技术布道师马兵东,结合当前iPaaS最新趋势,理论+实战揭秘下一代组装式融合集成平台架构和核......
  • mysql报错:SQL 错误 [1030] [HY000]: Got error 100 - 'InnoDB error' from storage en
    在mysql中进行alter时,报错:SQL错误[1030][HY000]:Goterror100-'InnoDBerror'fromstorageengine 原因:在配置my.cnf或my.ini里面innodb_force_recovery参数的值大于0,它默认值为0,如果大于0,innodb就会禁用insert、update、delete、alter语句。解决方式:在配置my.cn......
  • A-10.30.0.21-核心-主
    SHDXYQB4-108-C-04_C-05-CSW-RGS6250-M1-01U40#showrunBuildingconfiguration...Currentconfiguration:11428bytesversion11.0(5)B9P120hostnameSHDXYQB4-108-C-04_C-05-CSW-RGS6250-M1-01U40privilegeexecalllevel1showrunning-configprivilegeexecalllev......
  • A-10.30.0.23-接入-主
    SHDXYQB4-108-C-04_C-05-ASW-RGS6250-M1-01U37#showrun Buildingconfiguration...Currentconfiguration:15621bytesversion11.0(5)B9P120hostnameSHDXYQB4-108-C-04_C-05-ASW-RGS6250-M1-01U37privilegeexecalllevel1showrunning-configprivilegeexeclevel......
  • A-10.30.0.24-接入-备
    SHDXYQB4-108-C-04_C-05-ASW-RGS6250-M2-01U37#showrunBuildingconfiguration...Currentconfiguration:15059bytesversion11.0(5)B9P120hostnameSHDXYQB4-108-C-04_C-05-ASW-RGS6250-M2-01U37privilegeexecalllevel1showrunning-configprivilegeexeclevel1......
  • D平台接入B10.30.0.48_2024.03.05
     YDSJYC2-105-A-01-ASW-RGS6520-M1-01U26#showrunYDSJYC2-105-A-01-ASW-RGS6520-M1-01U26#showrunning-configBuildingconfiguration...Currentconfiguration:15429bytesversion11.0(5)B9P120hostnameYDSJYC2-105-A-01-ASW-RGS6520-M1-01U26privilegeexecalll......
  • D平台接入A10.30.0.47_2024.03.05
     YDSJYC2-105-A-02-ASW-RGS6520-M2-01U26#showrunYDSJYC2-105-A-02-ASW-RGS6520-M2-01U26#showrunning-configBuildingconfiguration...Currentconfiguration:14428bytesversion11.0(5)B9P120hostnameYDSJYC2-105-A-02-ASW-RGS6520-M2-01U26!load-balance-profil......