ElementsPlus中所有组件的属性,方法,事件

在这里插入图片描述

让我们一起走向未来

🎓作者简介:全栈领域优质创作者
🌐个人主页:百锦再@新空间代码工作室
📞工作室:新空间代码工作室(提供各种软件服务)
💌个人邮箱:[15045666310@163.com]
📱个人微信:15045666310
🌐网站:https://meihua150.cn/
💡座右铭:坚持自己的坚持,不要迷失自己!要快乐


在这里插入图片描述

在这里插入图片描述

1. 概述

在这里插入图片描述

Element Plus 是一个基于 Vue 3.x 的 UI 组件库,提供了一套丰富的组件和功能,用于帮助开发者快速构建现代化的前端应用。它包括了许多常用的组件,例如按钮、表单、弹窗、菜单、表格等。

  • 属性(Props):组件的输入参数,决定了组件的外观和行为。
  • 方法(Methods):可以在组件实例上调用,用于执行特定的行为或功能。
  • 事件(Events):组件向外部暴露的事件,用于父组件接收来自子组件的通知或交互。

2. 组件的属性(Props)

在这里插入图片描述

每个组件都有自己的属性,用于控制其行为或外观。以下是一些常见的组件和它们的属性。

2.1 Button 按钮组件
<el-button type="primary" :disabled="isDisabled" @click="handleClick">按钮</el-button>
  • type: 按钮类型,常见值有 primarysuccesswarningdangerinfo 等。
  • size: 按钮的大小,支持 mediumsmallmini
  • plain: 是否为朴素按钮,布尔值。
  • icon: 按钮的图标,指定图标类名。
  • loading: 是否显示加载动画,布尔值。

2.2 Input 输入框组件
<el-input v-model="inputValue" placeholder="请输入内容" :disabled="isDisabled" />
  • v-model: 双向绑定的值。
  • placeholder: 输入框的提示文字。
  • disabled: 是否禁用输入框,布尔值。
  • maxlength: 限制输入的最大字符数。
  • type: 输入框类型,支持 textpassword 等。

3. 组件的方法(Methods)

在这里插入图片描述

方法通常是组件内部定义的功能,可以被外部调用来触发组件的行为。例如,一些组件可以通过调用方法来打开或关闭对话框,或者更新组件的内容。

3.1 Dialog 对话框组件
<el-dialog :visible.sync="dialogVisible" title="对话框">
  <span>这里是对话框的内容</span>
</el-dialog>
  • open(): 打开对话框。
  • close(): 关闭对话框。
methods: {
  openDialog() {
    this.$refs.dialog.open();  // 调用 Dialog 的 open 方法
  },
  closeDialog() {
    this.$refs.dialog.close();  // 调用 Dialog 的 close 方法
  }
}

3.2 Message 消息组件
this.$message({
  message: '操作成功',
  type: 'success',
});
  • success(): 显示一个成功类型的消息。
  • warning(): 显示一个警告类型的消息。
  • error(): 显示一个错误类型的消息。
this.$message.success('操作成功!');

4. 组件的事件(Events)

在这里插入图片描述

事件通常是组件向外部暴露的一种方式,用于父组件接收子组件的通知或交互。在 Element Plus 中,许多组件都支持自定义事件,用于处理用户操作。

4.1 Button 按钮组件
<el-button @click="handleClick">按钮</el-button>
  • click: 当按钮被点击时触发。
methods: {
  handleClick() {
    this.$message('按钮被点击了');
  }
}

4.2 Input 输入框组件
<el-input v-model="inputValue" @input="handleInputChange" />
  • input: 输入框的输入事件,当输入框的内容发生变化时触发。
methods: {
  handleInputChange(value) {
    console.log(value);  // 输入框内容发生变化时输出新的值
  }
}

5. 属性、方法和事件的区别

在这里插入图片描述

  • 属性(Props):是传递给组件的静态值,用来控制组件的外观或行为。它们是不可变的,除非显式地更新。例如,在 Button 组件中,type 属性决定了按钮的类型。

  • 方法(Methods):是组件内部定义的函数,用于执行某些行为。通常这些方法是为了让外部能在需要时触发特定的操作,例如打开或关闭对话框、提交表单等。

  • 事件(Events):用于父组件与子组件之间的通信,通知父组件某些操作已经发生。组件通过触发事件来告知父组件其内部状态的变化或操作的完成。


6. 常用组件的示例

在这里插入图片描述在这里插入图片描述

6.1 Tabs 标签页组件
<el-tabs v-model="activeTab">
  <el-tab-pane label="用户管理" name="first">用户管理内容</el-tab-pane>
  <el-tab-pane label="订单管理" name="second">订单管理内容</el-tab-pane>
</el-tabs>
  • v-model: 双向绑定当前激活的标签页。
  • @tab-click: 当标签页被点击时触发。
methods: {
  handleTabClick(tab) {
    console.log('选中了标签:', tab.label);
  }
}

6.2 Table 表格组件
<el-table :data="tableData">
  <el-table-column prop="name" label="姓名"></el-table-column>
  <el-table-column prop="age" label="年龄"></el-table-column>
</el-table>
  • data: 表格的展示数据。
  • prop: 每列的数据字段。
  • @selection-change: 当选中的行发生变化时触发。
methods: {
  handleSelectionChange(val) {
    console.log(val);  // 返回选中的行数据
  }
}

7. 总结

在这里插入图片描述
Element Plus 提供了大量的组件,每个组件都有各自的属性、方法和事件。这些组件的属性决定了其外观和行为,方法定义了组件内部的功能,而事件则用于组件间的通信。

  • 属性(Props) 控制组件的外观和行为。
  • 方法(Methods) 用于触发组件的特定行为。
  • 事件(Events) 用于父子组件间的通信,通知外部操作的发生。

要详细了解每个组件的属性、方法和事件,建议阅读官方文档,因为它为每个组件提供了全面的示例和解释。

在这里插入图片描述

好的,下面是使用 Vue3 ElementPlus 封装一个提示确认框的组件,同时将请求地址确认框展示信息作为参数暴露出去。 ```vue <template> <el-dialog title="确认提示" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" > <p>{{ message }}</p> <span slot="footer" class="dialog-footer"> <el-button @click="dialogVisible = false">取消</el-button> <el-button type="primary" @click="handleConfirm">确定</el-button> </span> </el-dialog> </template> <script> import { defineComponent, ref } from 'vue'; import { ElDialog, ElButton } from 'element-plus'; export default defineComponent({ name: 'ConfirmDialog', components: { ElDialog, ElButton, }, props: { apiUrl: { type: String, default: '', }, message: { type: String, default: '', }, }, setup(props) { const dialogVisible = ref(false); // 确认操作 const handleConfirm = () => { // 发起请求 // ... // 关闭确认框 dialogVisible.value = false; }; // 取消操作 const handleClose = (done) => { dialogVisible.value = false; done(); }; return { dialogVisible, handleConfirm, handleClose, }; }, }); </script> ``` 在上面的代码中,我们使用 `defineComponent` 函数来定义一个 Vue3 组件,并且引入了 ElementPlus 的 `ElDialog` `ElButton` 组件。我们通过 `props` 属性将 `apiUrl` `message` 两个参数暴露出去,分别用于存放请求地址确认框展示信息。 在 `setup` 函数中,我们使用 `ref` 函数来创建一个名为 `dialogVisible` 的响应式变量,用于控制确认框的显示隐藏。我们同时定义了 `handleConfirm` `handleClose` 两个函数,用于处理确认取消操作。 在模板中,我们使用 ElementPlus 的 `el-dialog` 组件来展示确认框,通过 `visible.sync` 属性将 `dialogVisible` 确认框的显示状态绑定起来。在确认框的内容部分,我们通过插值绑定将 `message` 展示出来,同时设置了确认取消两个按钮,分别绑定了 `handleConfirm` `handleClose` 两个函数。 在 `handleConfirm` 函数中,我们可以根据 `apiUrl` 发起请求,然后在请求成功后关闭确认框。在 `handleClose` 函数中,我们只需要将 `dialogVisible` 设置为 false,然后调用 `done` 函数即可关闭确认框。 最后,我们将组件导出,即可在其他地方使用。例如: ```vue <template> <div> <el-button type="primary" @click="dialogVisible = true">打开确认框</el-button> <confirm-dialog :apiUrl="apiUrl" :message="message" /> </div> </template> <script> import { defineComponent, ref } from 'vue'; import ConfirmDialog from './ConfirmDialog.vue'; export default defineComponent({ name: 'TestComponent', components: { ConfirmDialog, }, setup() { const dialogVisible = ref(false); const apiUrl = 'http://example.com/api'; const message = '确认要进行此操作吗?'; return { dialogVisible, apiUrl, message, }; }, }); </script> ``` 在上面的代码中,我们引入了刚才封装的确认框组件,然后在模板中使用一个按钮来触发显示确认框。同时,我们将 `apiUrl` `message` 两个参数传递给确认框组件
评论 105
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百锦再@新空间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值