element-ui大总结

本文主要总结了Element-UI的四大核心用法:slot、Attribute、method和event,旨在提供一个快速查阅的指南。虽然初次接触可能会感到内容繁多,但通过实践和理解组件背后的思维原理,将能更熟练地运用Element-UI。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

element-ui 使用方法主要有4大块,slot ,属性, method和event。刚开始看这个不久,乍一看感觉有很多东西要记住使用。这个就当是做个主题阅读,知道基本的使用规则,快速索引。真正的熟练还是要在项目中多多练习才行,更重要的是有时间的时候,自己造出这些组建,了解后面的思维原理。

slot

<div style="width:800px;">
        <h1 class="mb20">slot</h1>
        <p>1.input slots</p>
        <el-input v-model="input22" placeholder="input prefix 效果">
          <!-- slot :prefix  suffix prepend append  只对type=text 有效-->
          <i slot="prefix" class="el-input__icon el-icon-search"></i>
          <el-button type="primary" slot="prepend">prepend 前置</el-button>
          <el-button type="primary" slot="append">append 后置</el-button>
        </el-input>
        <p>2. Alert slot</p>
        <el-alert title="错误提示的文案" type="error" description="文字说明文字说明文字说明文字说明文字说明文字说明" show-icon>
          <p slot>辅助性文字。同属性description</p>
        </el-alert>
        <p>3.Dropdown Slots
          <br>通过组件slot来设置下拉触发的元素以及需要通过具名slot为dropdown 来设置下拉菜单.
        </p>
        <el-dropdown>
          <span class="el-dropdown-link">
            <el-button type="primary">
              下拉菜单
              <i class="el-icon-arrow-down el-icon--right"></i>
            </el-button>
          </span>
          <el-dropdown-menu slot="dropdown">
            <el-dropdown-item>螺蛳粉</el-dropdown-item>
            <el-dropdown-item>双皮奶</el-dropdown-item>
            <el-dropdown-item>蚵仔煎</el-dropdown-item>
          </el-dropdown-menu>
        </el-dropdown>
        <p @click="centerDialogVisible = true">4. dialog Slot
          <!--  匿名  title footer -->
        </p>
        <el-dialog :visible="centerDialogVisible" :append-to-body="true">
          <p slot="title">title标题 slot</p>
          <p slot>匿名slot 即是内容模版</p>
          <div slot="footer" class="dialog-footer">
            <el-button @click="centerDialogVisible = false">取 消</el-button>
            <el-button type="primary" @click="centerDialogVisible = false">确 定</el-button>
          </div>
        </el-dialog>
        <p>5. table slot</p>
        <div>
          <el-table :data="hdData">
            <el-table-column label="姓名" prop="name"></el-table-column>
            <el-table-column label="开始时间" prop="begin"></el-table-column>
            <el-table-column label="结束时间" prop="end"></el-table-column>
            <el-table-column label="未成功">
              <!-- <template slot="header" slot-scope="scope">
                <el-input v-model="search" size="mini" placeholder="输入关键字搜索"/>
              </template>-->
              <template slot-scope="scope">
                <el-button
                  size="mini"
                  type="danger"
                  @click="handleDelete(scope.$index, scope.row)"
                >Delete</el-button>
              </template>
            </el-table-column>
          </el-table>
        </div>
      </div>

在这里插入图片描述

Attribute

 <h1 class="mb20">属性(基本在标签上直接展示就可以,⚠️有些属性的前面需要加:,如果自己的代码不生效可以看看是不是忽略了这个小细节)</h1>
      <el-input
        placeholder="请输入内容"
        v-model="input5"
        class="input-with-select"
        clearable
        autofocus
        suffix-icon="el-icon-search"
      >
        <el-select class="selectform" v-model="select" slot="prepend" placeholder="请选择">
          <el-option label="餐厅名" value="1"></el-option>
          <el-option label="订单号" value="2"></el-option>
          <el-option label="用户电话" value="3"></el-option>
        </el-select>
        <el-button slot="append" icon="el-icon-search"></el-button>
      </el-input>
      <div style="width:300px;">
        <div class="demo-input-suffix">
          <!-- 属性   suffix-icon -->
          <el-input placeholder="请选择日期" suffix-icon="el-icon-date" v-model="input2"></el-input>
          <el-input placeholder="请输入内容" prefix-icon="el-icon-search" v-model="input21"></el-input>
        </div>
      </div>

在这里插入图片描述

method

<h1>method</h1>
      <div style="width:500px">
        <p>method: 是绑定在DOM上的方法<br/>this.$refs[formName].resetFields();<br/>
         this.$refs[formName].validate</p>
         <p>如table 的<br/>
         this.$refs.multipleTable.toggleRowSelection(row);<br/>
         this.$refs.multipleTable.clearSelection();
         </p>
        <el-form
          :model="ruleForm"
          :rules="rules"
          ref="ruleForm"
          label-width="100px"
          class="demo-ruleForm"
        >
          <el-form-item label="活动名称" prop="name">
            <el-input v-model="ruleForm.name"></el-input>
          </el-form-item>
          <el-form-item label="活动区域" prop="region">
            <el-select v-model="ruleForm.region" placeholder="请选择活动区域">
              <el-option label="区域一" value="shanghai"></el-option>
              <el-option label="区域二" value="beijing"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="活动时间" required>
            <el-col :span="11">
              <el-form-item prop="date1">
                <el-date-picker
                  type="date"
                  placeholder="选择日期"
                  v-model="ruleForm.date1"
                  style="width: 100%;"
                ></el-date-picker>
              </el-form-item>
            </el-col>
            <el-col class="line" :span="2">-</el-col>
            <el-col :span="11">
              <el-form-item prop="date2">
                <el-time-picker
                  type="fixed-time"
                  placeholder="选择时间"
                  v-model="ruleForm.date2"
                  style="width: 100%;"
                ></el-time-picker>
              </el-form-item>
            </el-col>
          </el-form-item>
          <el-form-item label="即时配送" prop="delivery">
            <el-switch v-model="ruleForm.delivery"></el-switch>
          </el-form-item>
          <el-form-item label="活动性质" prop="type">
            <el-checkbox-group v-model="ruleForm.type">
              <el-checkbox label="美食/餐厅线上活动" name="type"></el-checkbox>
              <el-checkbox label="地推活动" name="type"></el-checkbox>
              <el-checkbox label="线下主题活动" name="type"></el-checkbox>
              <el-checkbox label="单纯品牌曝光" name="type"></el-checkbox>
            </el-checkbox-group>
          </el-form-item>
          <el-form-item label="特殊资源" prop="resource">
            <el-radio-group v-model="ruleForm.resource">
              <el-radio label="线上品牌商赞助"></el-radio>
              <el-radio label="线下场地免费"></el-radio>
            </el-radio-group>
          </el-form-item>
          <el-form-item label="活动形式" prop="desc">
            <el-input type="textarea" v-model="ruleForm.desc"></el-input>
          </el-form-item>
          <el-form-item>
            <el-button type="primary" @click="submitForm('ruleForm')">立即创建</el-button>
            <el-button @click="resetForm('ruleForm')">重置</el-button>
          </el-form-item>
        </el-form>
      </div>
submitForm(formName) {
		// form 的validate方法
      this.$refs[formName].validate(valid => {
        if (valid) {
          alert("submit!");
        } else {
          console.log("error submit!!");
          return false;
        }
      });
    },
    resetForm(formName) {
    	// form 的resetFields方法
      this.$refs[formName].resetFields();
    }

在这里插入图片描述

event

 <h1>event</h1>
      <div style="width:500px">
        event 是直接绑定在标签上是操作
        <!---@blur="testEvent"  input 框的blur-->
 <el-input
        placeholder="请输入内容"
        v-model="input5"
        class="input-with-select"
        clearable
        autofocus
        @blur="testEvent"
        suffix-icon="el-icon-search"
      >
      </el-input>
      </div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值