使用vue+elementui生成两个按钮 点击其中一个按钮 是这个按钮变成loading状态 另一个按钮禁用
时间: 2023-05-22 21:06:40 浏览: 515
您好,这是一个简单的使用 Vue 和 ElementUI 生成两个按钮并实现其中一个按钮变成 loading 状态以及禁用另一个按钮的例子:
```html
<template>
<div>
<el-button
:loading="isLoading"
:disabled="isLoading"
@click="handleClick"
>{{ buttonText }}</el-button>
<el-button :disabled="isLoading">另一个按钮</el-button>
</div>
</template>
<script>
export default {
data() {
return {
isLoading: false, // 定义 loading 状态
buttonText: '按钮', // 定义按钮文本
};
},
methods: {
handleClick() {
this.isLoading = true; // 点击时设置 loading 状态为 true
this.buttonText = '加载中...'; // 修改按钮文本为“加载中...”
// 模拟异步请求
setTimeout(() => {
this.isLoading = false; // 请求结束后设置 loading 状态为 false
this.buttonText = '按钮'; // 修改按钮文本为“按钮”
}, 2000);
},
},
};
</script>
```
这个例子中,我们使用 `isLoading` 属性来控制 loading 状态,使用 `buttonText` 属性来动态修改按钮文本,同时使用 `disabled` 属性来禁用另一个按钮。在点击第一个按钮时,`handleClick` 方法会被调用,我们通过设置 `isLoading` 和 `buttonText` 来切换按钮状态,模拟异步请求完成后,再将 `isLoading` 和 `buttonText` 还原为初始状态。
阅读全文