2016-07-27 14:15:02 +08:00
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
isLoading: false,
|
|
|
|
|
isLoading2: false
|
|
|
|
|
};
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
|
|
|
|
handleClick(event) {
|
|
|
|
|
console.log(event);
|
|
|
|
|
alert('button clicked!');
|
|
|
|
|
}
|
2016-09-06 17:26:04 +08:00
|
|
|
|
},
|
|
|
|
|
mounted() {
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
let demos = document.querySelectorAll('.source');
|
|
|
|
|
let thirdDemo = demos[2];
|
|
|
|
|
thirdDemo.classList.add('intro-block');
|
|
|
|
|
});
|
2016-07-27 14:15:02 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
<style>
|
|
|
|
|
.demo-box.demo-button {
|
2016-09-02 16:09:36 +08:00
|
|
|
|
.el-row {
|
|
|
|
|
margin-bottom: 10px;
|
|
|
|
|
}
|
2016-07-27 14:15:02 +08:00
|
|
|
|
.el-button + .el-button {
|
|
|
|
|
margin-left: 10px;
|
|
|
|
|
}
|
|
|
|
|
.el-button-group {
|
|
|
|
|
margin-bottom: 20px;
|
|
|
|
|
|
|
|
|
|
.el-button + .el-button {
|
|
|
|
|
margin-left: 0;
|
|
|
|
|
}
|
2016-10-25 11:33:39 +08:00
|
|
|
|
|
|
|
|
|
& + .el-button-group {
|
|
|
|
|
margin-left: 10px;
|
|
|
|
|
}
|
2016-07-27 14:15:02 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
2016-09-06 17:26:04 +08:00
|
|
|
|
|
2016-09-13 12:17:08 +08:00
|
|
|
|
.demo-box.demo-button .intro-block {
|
2016-09-06 17:26:04 +08:00
|
|
|
|
padding: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.demo-button .intro-block .block {
|
|
|
|
|
padding: 30px 24px;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
border-bottom: solid 1px #EFF2F6;
|
|
|
|
|
&:last-child {
|
2016-10-28 17:29:18 +08:00
|
|
|
|
border-bottom: none;
|
2016-09-06 17:26:04 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.demo-button .intro-block .demonstration {
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
color: #8492a6;
|
|
|
|
|
line-height: 44px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.demo-button .intro-block .wrapper {
|
|
|
|
|
float: right;
|
|
|
|
|
margin-right: 20px;
|
|
|
|
|
}
|
2016-07-27 14:15:02 +08:00
|
|
|
|
</style>
|
|
|
|
|
|
2016-08-26 18:34:54 +08:00
|
|
|
|
## Button 按钮
|
2016-09-07 18:46:20 +08:00
|
|
|
|
常用的操作按钮。
|
2016-08-26 18:34:54 +08:00
|
|
|
|
|
|
|
|
|
### 基础用法
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
基础的按钮用法。
|
2016-08-16 17:19:34 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
:::demo Button 组件默认提供7种主题,由`type`属性来定义,默认为`default`。
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
|
|
|
|
```html
|
2016-09-02 16:09:36 +08:00
|
|
|
|
<el-button>默认按钮</el-button>
|
|
|
|
|
<el-button type="primary">主要按钮</el-button>
|
|
|
|
|
<el-button type="text">文字按钮</el-button>
|
2016-07-27 14:15:02 +08:00
|
|
|
|
```
|
2016-08-25 18:24:51 +08:00
|
|
|
|
:::
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
### 禁用状态
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
按钮不可用状态。
|
2016-08-16 17:19:34 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
:::demo 你可以使用`disabled`属性来定义按钮是否可用,它接受一个`Boolean`值。
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
|
|
|
|
```html
|
2016-09-02 16:09:36 +08:00
|
|
|
|
<el-button :plain="true" :disabled="true">主要按钮</el-button>
|
|
|
|
|
<el-button type="primary" :disabled="true">主要按钮</el-button>
|
|
|
|
|
<el-button type="text" :disabled="true">文字按钮</el-button>
|
2016-07-27 14:15:02 +08:00
|
|
|
|
```
|
2016-08-25 18:24:51 +08:00
|
|
|
|
:::
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
### 有颜色倾向
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
不同的颜色倾向代表不同的提示
|
2016-08-16 17:19:34 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
:::demo 朴素按钮同样设置了不同的`type`属性对应的样式(可选值同上),默认为`info`。设置`plain`属性,它接受一个`Boolean`。注意,在该情况下,`type`虽然可以为`text`,但是是没有意义的,会显示为`text button`的样式。
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
|
|
|
|
```html
|
2016-09-06 17:26:04 +08:00
|
|
|
|
<div class="block">
|
|
|
|
|
<span class="demonstration">默认显示颜色</span>
|
|
|
|
|
<span class="wrapper">
|
2016-09-02 16:09:36 +08:00
|
|
|
|
<el-button type="success">成功按钮</el-button>
|
|
|
|
|
<el-button type="warning">警告按钮</el-button>
|
|
|
|
|
<el-button type="danger">危险按钮</el-button>
|
|
|
|
|
<el-button type="info">信息按钮</el-button>
|
2016-09-06 17:26:04 +08:00
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="block">
|
|
|
|
|
<span class="demonstration">hover 显示颜色</span>
|
|
|
|
|
<span class="wrapper">
|
2016-09-02 16:09:36 +08:00
|
|
|
|
<el-button :plain="true" type="success">成功按钮</el-button>
|
|
|
|
|
<el-button :plain="true" type="warning">警告按钮</el-button>
|
|
|
|
|
<el-button :plain="true" type="danger">危险按钮</el-button>
|
|
|
|
|
<el-button :plain="true" type="info">信息按钮</el-button>
|
2016-09-06 17:26:04 +08:00
|
|
|
|
</span>
|
|
|
|
|
</div>
|
2016-07-27 14:15:02 +08:00
|
|
|
|
```
|
2016-08-25 18:24:51 +08:00
|
|
|
|
:::
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-08-26 18:34:54 +08:00
|
|
|
|
### 图标按钮
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-08-25 18:24:51 +08:00
|
|
|
|
带图标的按钮可增强辨识度(有文字)或节省空间(无文字)。
|
2016-08-16 17:19:34 +08:00
|
|
|
|
|
2016-08-25 18:24:51 +08:00
|
|
|
|
:::demo 设置`icon`属性即可,icon 的列表可以参考 Element 的 icon 组件,也可以设置在文字右边的 icon ,只要使用`i`标签即可,可以使用自定义图标。
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<el-button type="primary" icon="edit"></el-button>
|
2016-09-02 16:09:36 +08:00
|
|
|
|
<el-button type="primary" icon="share"></el-button>
|
|
|
|
|
<el-button type="primary" icon="delete"></el-button>
|
2016-09-12 13:53:45 +08:00
|
|
|
|
<el-button type="primary" icon="search">搜索</el-button>
|
2016-10-25 11:33:39 +08:00
|
|
|
|
<el-button type="primary">上传<i class="el-icon-upload el-icon--right"></i></el-button>
|
2016-07-27 14:15:02 +08:00
|
|
|
|
```
|
2016-08-25 18:24:51 +08:00
|
|
|
|
:::
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-08-26 18:34:54 +08:00
|
|
|
|
### 按钮组
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
以按钮组的方式出现,常用于多项类似操作。
|
2016-08-25 18:24:51 +08:00
|
|
|
|
|
|
|
|
|
:::demo 使用`<el-button-group>`标签来嵌套你的按钮。
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<el-button-group>
|
2016-09-02 16:09:36 +08:00
|
|
|
|
<el-button type="primary" icon="arrow-left">上一页</el-button>
|
2016-10-25 11:33:39 +08:00
|
|
|
|
<el-button type="primary">下一页<i class="el-icon-arrow-right el-icon--right"></i></el-button>
|
2016-07-27 14:15:02 +08:00
|
|
|
|
</el-button-group>
|
|
|
|
|
<el-button-group>
|
|
|
|
|
<el-button type="primary" icon="edit"></el-button>
|
|
|
|
|
<el-button type="primary" icon="share"></el-button>
|
|
|
|
|
<el-button type="primary" icon="delete"></el-button>
|
|
|
|
|
</el-button-group>
|
|
|
|
|
```
|
2016-08-25 18:24:51 +08:00
|
|
|
|
:::
|
2016-07-27 14:15:02 +08:00
|
|
|
|
|
2016-09-02 16:09:36 +08:00
|
|
|
|
### 加载中
|
|
|
|
|
|
|
|
|
|
点击按钮后进行数据加载操作,在按钮上显示加载状态。
|
|
|
|
|
|
|
|
|
|
:::demo 要设置为 loading 状态,只要设置`loading`属性为`true`即可。
|
|
|
|
|
|
|
|
|
|
```html
|
2016-09-12 13:53:45 +08:00
|
|
|
|
<el-button type="primary" :loading="true">加载中</el-button>
|
2016-09-02 16:09:36 +08:00
|
|
|
|
```
|
|
|
|
|
:::
|
|
|
|
|
|
|
|
|
|
### 不同尺寸
|
|
|
|
|
|
|
|
|
|
Button 组件提供除了默认值以外的三种尺寸,可以在不同场景下选择合适的按钮尺寸。
|
|
|
|
|
|
|
|
|
|
:::demo 额外的尺寸:`large`、`small`、`mini`,通过设置`size`属性来配置它们。
|
|
|
|
|
|
|
|
|
|
```html
|
2016-09-12 13:53:45 +08:00
|
|
|
|
<el-button type="primary" size="large">大型按钮</el-button>
|
|
|
|
|
<el-button type="primary">正常按钮</el-button>
|
|
|
|
|
<el-button type="primary" size="small">小型按钮</el-button>
|
|
|
|
|
<el-button type="primary" size="mini">超小按钮</el-button>
|
2016-09-02 16:09:36 +08:00
|
|
|
|
```
|
|
|
|
|
:::
|
|
|
|
|
|
2016-08-26 18:34:54 +08:00
|
|
|
|
### Attributes
|
2016-07-27 14:15:02 +08:00
|
|
|
|
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
|
|
|
|
|---------- |-------- |---------- |------------- |-------- |
|
2016-09-02 13:56:47 +08:00
|
|
|
|
| size | 尺寸 | string | large,small,mini | — |
|
|
|
|
|
| type | 类型 | string | primary,success,warning,danger,info,text | — |
|
2016-07-27 14:15:02 +08:00
|
|
|
|
| plain | 是否朴素按钮 | Boolean | true,false | false |
|
|
|
|
|
| disabled | 禁用 | boolean | true, false | false |
|
2016-09-02 13:56:47 +08:00
|
|
|
|
| icon | 图标,已有的图标库中的图标名 | string | — | — |
|
2016-08-31 12:10:29 +08:00
|
|
|
|
| native-type | 原生 type 属性 | string | button,submit,reset | button |
|