前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vue学习-iView组件-Form表单

Vue学习-iView组件-Form表单

作者头像
Autooooooo
发布2020-11-09 10:08:04
1.4K0
发布2020-11-09 10:08:04
举报
文章被收录于专栏:CoxhuangCoxhuang

Form表单

#1 环境

代码语言:javascript
复制
"view-design": "^4.0.0",
"vue": "^2.5.2",

#2 原生form

代码语言:javascript
复制
<template>
	<div>
		<form>
			<input type="text" v-model="form.username" placeholder="用户名">
			<input type="text" v-model="form.password" placeholder="密码">
			<button @click="submitForm">登录</button>
		</form>
	</div>
</template>

<script>

    export default {
        name: "test",
        data() {
            return {
                form:{
                    username:"admin",
                    password:"123456",
                }
            }
        },
	    methods:{
            submitForm(){
	            var formdata = JSON.stringify(this.form)
	            console.log(formdata)
            }
	    }
    }
</script>

20191029233127-image.png
20191029233127-image.png

#3 iView组件

官方文档

https://www.iviewui.com/components/form

代码语言:javascript
复制
<template>
	<div>
		<Form ref="formlogin" :model="form" inline>
			<FormItem prop="user">
				<Input type="text" v-model="form.username" placeholder="Username">
					<Icon type="ios-person-outline" slot="prepend"></Icon>
				</Input>
			</FormItem>
			<FormItem prop="password">
				<Input type="password" v-model="form.password" placeholder="Password">
					<Icon type="ios-lock-outline" slot="prepend"></Icon>
				</Input>
			</FormItem>
			<FormItem>
				<Button type="primary" @click="submitForm">登录</Button>
			</FormItem>
		</Form>
	</div>
</template>

<script>

    export default {
        name: "test",
        data() {
            return {
                form:{
                    username:"admin",
                    password:"123456",
                }
            }
        },
        methods:{
            submitForm(){
                var formdata = JSON.stringify(this.form)
                console.log(formdata)
            }
        }
    }
</script>
20191029233530-image.png
20191029233530-image.png

#3.1 添加字段校验

代码语言:javascript
复制
...
// ref="formlogin" 注册, 方便获取标签
// :rules="rulelogin" 表单规则, 在data里面定义表单规则
<Form ref="formlogin" :model="form" :rules="rulelogin" inline>
...

data() {
    return {
        form:{
            username:"admin",
            password:"123456",
        },
        rulelogin: {  // 校验表单规则
            username: [// FormItem标签中的 prop 属性预期值
                { required: true, message: '用户名不能为空', trigger: 'blur' }
            ],
            password: [// FormItem标签中的 prop 属性预期值
                { required: true, message: '密码不能为空', trigger: 'blur' },
                { type: 'string', min: 6, message: '密码至少需要6位', trigger: 'blur' }
            ]
        }
    }
},
methods:{
    submitForm(){
        this.$refs['formlogin'].validate((valid) => {
		// this.$refs['formlogin'].validate : 获取表单校验结果; 校验正确-> valid为True; 校验失败-> valid为False;
            if (valid) {
                var formdata = JSON.stringify(this.form)
                console.log(formdata)
                // this.$Message.success('Success!');
            } else {
                // this.$Message.error('Fail!');
                console.log("error")
            }
        })
    }
}
...
20191029234117-image.png
20191029234117-image.png
20191029234148-image.png
20191029234148-image.png
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Form表单
  • #1 环境
  • #2 原生form
  • #3 iView组件
    • #3.1 添加字段校验
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档