Vue+Element UI添加rules(非空,长度等)限制

<template>
  <div>
    //ref="editForm"必须,下面方法会用到该名称,:rules="formRules"必须
    <el-form ref="editForm" :model="editForm" :rules="formRules">
      //prop="country"必须,对应相应的rule
      <el-form-item label="国家" prop="country">
        <el-input
          v-model="editForm.country"
          placeholder="请填入国家"
        ></el-input>
      </el-form-item>
      //prop="types"必须,对应相应的rule
      <el-form-item label="类型" prop="types">
        <el-select v-model="editForm.type" filterable placeholder="请选择">
          <el-option
            v-for="item in types"
            :key="item.value"
            :label="item.label"
            :value="item.value"
          ></el-option>
        </el-select>
      </el-form-item>
    </el-form>
    <el-button type="primary" v-on:click="add('editForm')">确定</el-button>
  </div>
</template>
<script>
export default {
  name: "RuleDemo",
  data() {
    return {
      //rules集合
      formRules: {
        country: [
          { required: true, message: "请填入国家", trigger: "change" },
          { min: 3, max: 10, message: "名称长度在3到10个字符", trigger: "change" }
        ],
        types: [
          { required: true, message: "请选择类型", trigger: "blur" },
          { required: true, message: "请选择类型", trigger: "change" }
        ]
      },
      types: [
        { value: "CHN", label: "中国" },
        { value: "USA", label: "美国" },
        { value: "UK", label: "英国" }
      ],
      editForm: {
        country: "",
        type: ""
      }
    };
  },
  methods: {
    //editForm为ref="editForm"的值
    add(editForm) {
      this.$refs[editForm].validate(valid => {
        //验证通过
        if (valid) {
          //其他逻辑
        }
        //验证未通过
        else {
          //其他逻辑
        }
      });
    }
  }
};
</script>

 

好的,我会尽力用中文回答你的问题。 Vue Element UI 是一个基于 Vue.js 的前端 UI 组件库,可以帮助开发者快速构建 web 应用程序的用户界面。如果你想使用 Vue Element UI 编写登录界面,你可以这样做: 1. 安装 Vue Element UI:在你的 Vue.js 项目中使用 npm 或 yarn 安装 Vue Element UI。 ``` npm install element-ui ``` 2. 引入 Vue Element UI:在你的 Vue.js 项目的入口文件中引入 Vue Element UI 并注册组件。 ```javascript import Vue from 'vue' import ElementUI from 'element-ui' import 'element-ui/lib/theme-chalk/index.css' Vue.use(ElementUI) ``` 3. 创建登录界面:在你的 Vue.js 项目中创建一个登录界面的模板,使用 Vue Element UI 提供的组件来构建界面布局和样式。 ```html <template> <div class="login-container"> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form-item label="用户名" prop="username"> <el-input v-model="form.username" placeholder="请输入用户名"></el-input> </el-form-item> <el-form-item label="密码" prop="password"> <el-input v-model="form.password" type="password" placeholder="请输入密码"></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="handleLogin">登录</el-button> </el-form-item> </el-form> </div> </template> <script> export default { data() { return { form: { username: '', password: '' }, rules: { username: [ { required: true, message: '请输入用户名', trigger: 'blur' }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值