user-search

<template>

  <div class="search">

    <!-- 1.输入搜索关键字的表单 -->

    <el-form :model="searchForm" ref="formRef" label-width="80px" size="large">

      <el-row :gutter="20">

        <el-col :span="8">

          <el-form-item label="用户名" prop="name">

            <el-input

              v-model="searchForm.name"

              placeholder="请输入查询的用户名"

            />

          </el-form-item>

        </el-col>

        <el-col :span="8">

          <el-form-item label="真实姓名" prop="realname">

            <el-input

              v-model="searchForm.realname"

              placeholder="请输入查询的真实姓名"

            />

          </el-form-item>

        </el-col>

        <el-col :span="8">

          <el-form-item label="手机号码" prop="cellphone">

            <el-input

              v-model="searchForm.cellphone"

              placeholder="请输入查询的手机号码"

            />

          </el-form-item>

        </el-col>

        <el-col :span="8">

          <el-form-item label="状态" prop="enable">

            <el-select

              v-model="searchForm.enable"

              placeholder="请选择查询的状态"

              style="width: 100%"

            >

              <el-option label="启用" :value="1" />

              <el-option label="禁用" :value="0" />

            </el-select>

          </el-form-item>

        </el-col>

        <el-col :span="8">

          <el-form-item label="创建时间" prop="createAt">

            <el-date-picker

              v-model="searchForm.createAt"

              type="daterange"

              range-separator="-"

              start-placeholder="开始时间"

              end-placeholder="结束时间"

            />

          </el-form-item>

        </el-col>

      </el-row>

    </el-form>

    <!-- 2.重置和搜索的按钮 -->

    <div class="btns">

      <el-button icon="Refresh" @click="handleResetClick">重置</el-button>

      <el-button icon="Search" type="primary" @click="handleQueryClick"

        >查询</el-button

      >

    </div>

  </div>

</template>

<script setup lang="ts">

import { reactive, ref } from 'vue'

import type { ElForm } from 'element-plus'

// 定义自定义事件

const emit = defineEmits(['queryClick', 'resetClick'])

// 定义form的数据

const searchForm = reactive({

  name: '',

  realname: '',

  cellphone: '',

  enable: '',

  createAt: ''

})

// 重置操作

const formRef = ref<InstanceType<typeof ElForm>>()

function handleResetClick() {

  // 1.form中的数据全部重置

  formRef.value?.resetFields()

  // 2.将事件出去, content内部重新发送网络请求

  emit('resetClick')

}

function handleQueryClick() {

  emit('queryClick', searchForm)

}

</script>

<style lang="less" scoped>

.search {

  background-color: #fff;

  padding: 20px;

  .el-form-item {

    padding: 20px 30px;

    margin-bottom: 0;

  }

  .btns {

    text-align: right;

    padding: 0 50px 10px 0;

    .el-button {

      height: 36px;

    }

  }

}

</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值