基于element-ui搜索框按钮的二次封装

这是我基于element封装的第一个组件——搜索框组件

定义组件

1. 此组件可以传递placeholder
2. 定义了一个搜索框事件

项目中执行 npm i element-ui -S (安装)

在main.js中写入

/* 引入element */
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

/* 运用 ElementUI */
Vue.use(ElementUI)

开始封装

<template>
  <div class="search-wrapper-box">
    <el-input
      v-model="sceneName"
      class="search-input elc-list-input"
      size="mini"
      :placeholder="placeholderName"
      @keyup.native.enter="searchCon"
    >
      <i slot="prefix" class="el-input__icon el-icon-search search-icon" @click="searchCon" />
    </el-input>
    <!-- <div class="a"></div> -->
  </div>
</template>
<script>
export default {
  name: 'SearchInput',
  props: {
    placeholderName: {
      type: String,
      default: '',
    },
  },
  data() {
    return {
      sceneName: '',
    }
  },
  methods: {
    searchCon() {
      this.$emit('sendSearchName', this.sceneName)
    },
  },
}
</script>
<style lang="scss" scoped>
  .search-wrapper-box {
    position: absolute;
    right: 50px;
    top: 50px;
    width: 306px;
    // 搜索框样式覆盖
    .search-input {
      ::v-deep .el-input__inner {
        height: 45px;
        line-height: 45px;
        border-radius: 23px;
        padding-left: 40px;
        font-size: 14px;
      }
      ::v-deep .el-input__icon {
        margin: 3px 0 0 5px;
        font-size: 18px;
      }
    }
  }
</style>

在组件内使用

组件内使用

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值