使用elementui构建form表单

212 阅读1分钟
  • 导入element的布局容器组件

用于布局的容器组件,方便快速搭建页面的基本结构:

el-container:外层容器。当子元素中包含 el-header或 el-footer 时,全部子元素会垂直上下排列,否则会水平左右排列。

el-header:顶栏容器。

el-aside:侧边栏容器。

el-main:主要区域容器。

el-footer:底栏容器。

rouer是否开启路由 通过index跳转

image.png

<el-form
      :model="ruleForm"
      status-icon
      :rules="rules"
      ref="ruleForm"
      label-width="100px"
    >
      <el-form-item label="用户名" prop="username">
        <el-input v-model="ruleForm.username"></el-input>
      </el-form-item>
      <el-form-item label="密码" prop="password">
        <el-input
          type="password"
          v-model="ruleForm.password"
          autocomplete="off"
        ></el-input>
      </el-form-item>
      <div class="btn">
        <el-form-item>
          <el-button type="primary" @click="submitForm('ruleForm')"
            >提交</el-button
          >
          <el-button @click="resetForm('ruleForm')">重置</el-button>
          <el-button type="primary" @click="gotoregister('ruleForm')"
            >注册</el-button
          >
        </el-form-item>
      </div>
    </el-form>
   

复制代码
  • 使用axios调用接口渲染数据
methods: {
    gotoregister() {
      this.$router.push("/Register");
    },
    submitForm(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          axios.post("http", {
              username: this.ruleForm.username,
              password: this.ruleForm.password,
            })
            .then((res) => {
              // console.log(res.data);
              let { data,meta } = res.data;
              if (meta.status == 200) {
                this.$message.success(meta.msg);
                localStorage.username = data.username;
                localStorage.token = data.token;
                setTimeout(()=>{
                  this.$router.push({path:'/index'})
                },1000)
              } else {
                this.$message.warning(meta.msg);
              }
            })
            .catch((err) => {
              console.log(err);
            });
        } else {
          this.$message.error('您输入的有误');
        }
      });
    },