Rate/Slider/Message doc update

pull/2/head
Leopoldthecoder 2016-08-27 16:06:22 +08:00
parent ff9a5ba530
commit 1a2566117d
8 changed files with 200 additions and 112 deletions

View File

@ -2,9 +2,7 @@
module.exports = {
methods: {
open() {
this.$message({
message: '这是一条消息提示'
});
this.$message('这是一条消息提示');
},
open2() {
@ -70,11 +68,13 @@
}
</style>
## 基本用法
## Message 消息提示
Message 系统了反馈提示,比 Notification 更为小巧,可以根据需要来使用它们,在配置上,它们非常类似,所以部分 Notification 的 options 我们不会做详尽解释,文末有 options 列表,可以结合 Notification 的文档理解它们。
反馈提示,比 Notification 更为小巧
:::demo Element 注册了一个`$message`方法用于调用Message 同样接收一个`options`字面量,`message`参数能定义正文内容。
### 基础用法
:::demo Message 在配置上与 Notification 非常类似,所以部分 options 在此不做详尽解释,文末有 options 列表,可以结合 Notification 的文档理解它们。Element 注册了一个`$message`方法用于调用Message 可以接收一个字符串作为参数,它会被显示为正文内容。
```html
<template>
@ -85,9 +85,7 @@ Message 系统了反馈提示,它比 Notification 更为小巧,可以根据
export default {
methods: {
open() {
this.$message({
message: '这是一条消息提示'
});
this.$message('这是一条消息提示');
}
}
}
@ -95,13 +93,11 @@ Message 系统了反馈提示,它比 Notification 更为小巧,可以根据
```
:::
## 不同状态
### 不同状态
Message 同样提供了四种类型:`success``info``warning``error`,由不同图标表示。
Message 提供了四种类型:`success``info``warning``error`,由不同图标表示。
你可以通过下面的按钮来体验它们:
:::demo 设置`type`字段来定义它们,默认为`info`,如果设置其他值将被忽略。
:::demo 当需要自定义更多属性时Message 也可以接收一个对象为参数。比如,设置`type`字段可以定义不同的状态,默认为`info`。此时正文内容以`message`的值传入。
```html
<template>
<el-button :plain="true" @click.native="open2">成功</el-button>
@ -138,13 +134,11 @@ Message 同样提供了四种类型:`success``info``warning``error`
```
:::
## 可关闭
### 可关闭
默认的 Message 是不可以被人工关闭的,如果需要可关闭的 Message可以使用`showClose`字段。
可以设置为手动关闭的 Message
注意:和 Notification 一样Message 拥有可控的`duration`,设置`0`为不会被自动关闭,默认为 3000 毫秒。
:::demo
:::demo 默认的 Message 是不可以被人工关闭的,如果需要可手动关闭的 Message可以使用`showClose`字段。此外,和 Notification 一样Message 拥有可控的`duration`,设置`0`为不会被自动关闭,默认为 3000 毫秒。
```html
<template>
<el-button :plain="true" @click.native="open5">消息</el-button>
@ -209,8 +203,8 @@ import { Message } from 'element-ui';
## Options
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---------- |-------------- |---------- |-------------------------------- |-------- |
| message | 消息文字 | string | | |
| type | 主题 | string | 'success', 'warning', 'info', 'error' | 'info' |
| duration | 显示时间, 毫秒。设为 0 则不会自动关闭 | number | | 3000 |
| showClose | 是否显示关闭按钮 | boolean | | false |
| onClose | 关闭时的回调函数, 参数为被关闭的 message 实例 | function | | |
| message | 消息文字 | string | - | - |
| type | 主题 | string | success/warning/info/error | info |
| duration | 显示时间, 毫秒。设为 0 则不会自动关闭 | number | - | 3000 |
| showClose | 是否显示关闭按钮 | boolean | - | false |
| onClose | 关闭时的回调函数, 参数为被关闭的 message 实例 | function | - | - |

View File

@ -16,46 +16,50 @@
margin: 20px 0;
}
</style>
## 基础用法
<div class="demo-box demo-rate">
<el-rate v-model="value1"></el-rate>
</div>
## Rate 评分
评分组件
### 基础用法
适用广泛的基础用法
:::demo
``` html
<el-rate v-model="value1"></el-rate>
```
:::
## 区分颜色
### 区分颜色
利用颜色对分数及情感倾向进行分级。分数可以被分为三个等级,对应的两个阈值可分别通过 `low-threshold``high-threshold` 设定。
<div class="demo-box demo-rate">
<el-rate v-model="value2" :colors="['#99A9BF', '#F7BA2A', '#FF9900']"></el-rate>
</div>
利用颜色对分数及情感倾向进行分级
:::demo 分数可以被分为三个等级,对应的两个阈值可分别通过 `low-threshold``high-threshold` 设定。
``` html
<el-rate v-model="value2" :colors="['#99A9BF', '#F7BA2A', '#FF9900']"></el-rate>
<el-rate
v-model="value2"
:colors="['#99A9BF', '#F7BA2A', '#FF9900']">
</el-rate>
```
:::
## 辅助文字
为组件设置 `show-text` 属性会在右侧显示辅助文字。通过设置 `texts` 可以为每一个分值指定对应的辅助文字。`texts` 为一个数组,长度应等于最大值 `max`
<div class="demo-box demo-rate">
<el-rate v-model="value3" show-text></el-rate>
</div>
用辅助文字直接地表达对应分数
:::demo 为组件设置 `show-text` 属性会在右侧显示辅助文字。通过设置 `texts` 可以为每一个分值指定对应的辅助文字。`texts` 为一个数组,长度应等于最大值 `max`
``` html
<el-rate v-model="value3" show-text></el-rate>
<el-rate
v-model="value3"
show-text>
</el-rate>
```
:::
## 其他 icon
<div class="demo-box demo-rate">
<el-rate v-model="value4" :icon-classes="['icon-rate-face-1', 'icon-rate-face-2', 'icon-rate-face-3']" void-icon-class="icon-rate-face-off" :colors="['#99A9BF', '#F7BA2A', '#FF9900']"></el-rate>
</div>
:::demo 当有多层评价时,可以用不同类型的 icon 区分评分层级
``` html
<el-rate
v-model="value4"
@ -64,36 +68,42 @@
:colors="['#99A9BF', '#F7BA2A', '#FF9900']">
</el-rate>
```
:::
## 只读
为组件设置 `disabled` 属性表示组件为只读,支持小数分值。此时若设置 `show-text`,则会在右侧显示目前的分值。可以提供 `text-template` 作为显示模板,模板为一个包含了 `{value}` 的字符串,`{value}` 会被解析为分值。
<div class="demo-box demo-rate">
<el-rate v-model="value5" disabled show-text text-color="#ff9900" text-template="{value} 分"></el-rate>
</div>
只读的评分用来展示分数,允许出现半星
:::demo 为组件设置 `disabled` 属性表示组件为只读,支持小数分值。此时若设置 `show-text`,则会在右侧显示目前的分值。可以提供 `text-template` 作为显示模板,模板为一个包含了 `{value}` 的字符串,`{value}` 会被解析为分值。
``` html
<el-rate v-model="value5" disabled show-text text-color="#ff9900" text-template="{value} 分"></el-rate>
<el-rate
v-model="value5"
disabled
show-text
text-color="#ff9900"
text-template="{value} 分">
</el-rate>
```
:::
## Attributes
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---------- |-------- |---------- |------------- |-------- |
| v-model | 绑定值 | Number | | 0 |
| max | 最大分值 | Number | | 5 |
| disabled | 是否为只读 | Boolean | | false |
| allow-half | 是否允许半选 | Boolean | | false |
| low-threshold | 低分和中等分数的界限值,值本身被划分在低分中 | Number | | 2 |
| high-threshold | 高分和中等分数的界限值,值本身被划分在高分中 | Number | | 4 |
| colors | icon 的颜色数组,共有 3 个元素,为 3 个分段所对应的颜色 | Array | | ['#F7BA2A', '#F7BA2A', '#F7BA2A'] |
| void-color | 未选中 icon 的颜色 | String | | '#C6D1DE' |
| disabled-void-color | 只读时未选中 icon 的颜色 | String | | '#EFF2F7' |
| icon-classes | icon 的类名数组,共有 3 个元素,为 3 个分段所对应的类名 | Array | | ['el-icon-star-on', 'el-icon-star-on', 'el-icon-star-on'] |
| void-icon-class | 未选中 icon 的类名 | String | | 'el-icon-star-off' |
| disabled-void-icon-class | 只读时未选中 icon 的类名 | String | | 'el-icon-star-on' |
| show-text | 是否显示辅助文字 | Boolean | | false |
| text-color | 辅助文字的颜色 | String | | '1F2D3D' |
| texts | 辅助文字数组 | Array | | ['极差', '失望', '一般', '满意', '惊喜'] |
| text-template | 只读时的辅助文字模板 | String | | '{value}' |
| max | 最大分值 | Number | - | 5 |
| disabled | 是否为只读 | Boolean | - | false |
| allow-half | 是否允许半选 | Boolean | - | false |
| low-threshold | 低分和中等分数的界限值,值本身被划分在低分中 | Number | - | 2 |
| high-threshold | 高分和中等分数的界限值,值本身被划分在高分中 | Number | - | 4 |
| colors | icon 的颜色数组,共有 3 个元素,为 3 个分段所对应的颜色 | Array | - | ['#F7BA2A', '#F7BA2A', '#F7BA2A'] |
| void-color | 未选中 icon 的颜色 | String | - | #C6D1DE |
| disabled-void-color | 只读时未选中 icon 的颜色 | String | - | #EFF2F7 |
| icon-classes | icon 的类名数组,共有 3 个元素,为 3 个分段所对应的类名 | Array | - | ['el-icon-star-on', 'el-icon-star-on', 'el-icon-star-on'] |
| void-icon-class | 未选中 icon 的类名 | String | - | el-icon-star-off |
| disabled-void-icon-class | 只读时未选中 icon 的类名 | String | - | el-icon-star-on |
| show-text | 是否显示辅助文字 | Boolean | - | false |
| text-color | 辅助文字的颜色 | String | - | 1F2D3D |
| texts | 辅助文字数组 | Array | - | ['极差', '失望', '一般', '满意', '惊喜'] |
| text-template | 只读时的辅助文字模板 | String | - | {value} |
## Events
| 事件名称 | 说明 | 回调参数 |

View File

@ -6,69 +6,147 @@
value2: 50,
value3: null,
value4: null,
value5: null,
value6: null,
value7: null
value5: null
};
}
}
</script>
## 基本用法
<style>
.demo-box.demo-slider .source {
padding: 0;
}
.demo-box.demo-slider .block {
padding: 30px 24px;
overflow: hidden;
border-bottom: solid 1px #EFF2F6;
&:last-child {
border-bottom: none;
}
}
.demo-box.demo-slider .demonstration {
font-size: 14px;
color: #8492a6;
line-height: 44px;
}
.demo-box.demo-slider .demonstration + .el-slider {
float: right;
width: 70%;
margin-right: 20px;
}
</style>
<el-slider v-model="value1"></el-slider>
## Slider 滑块
通过拖动滑块在一个固定区间内进行选择
### 基础用法
在拖动滑块时,显示当前值
:::demo 通过设置绑定值自定义滑块的初始值
```html
<el-slider v-model="value1"></el-slider>
<template>
<div class="block">
<span class="demonstration">默认</span>
<el-slider v-model="value1"></el-slider>
</div>
<div class="block">
<span class="demonstration">自定义初始值</span>
<el-slider v-model="value2"></el-slider>
</div>
</template>
<script>
export default {
data() {
return {
value1: 0,
value2: 50
}
}
}
</script>
```
:::
## 定义初始值
### 离散
<el-slider v-model="value2"></el-slider>
选项可以是离散的
:::demo 改变`step`的值可以改变步长,通过设置`show-step`属性可以显示间断点
```html
<el-slider v-model="value2"></el-slider>
<template>
<div class="block">
<span class="demonstration">不显示间断点</span>
<el-slider
v-model="value3"
:step="10">
</el-slider>
</div>
<div class="block">
<span class="demonstration">显示间断点</span>
<el-slider
v-model="value4"
:step="10"
show-stops>
</el-slider>
</div>
</template>
<script>
export default {
data() {
return {
value3: 0,
value4: 0
}
}
}
</script>
```
:::
## 定义区间
### 带有输入框
<el-slider :min="20" :max="80" v-model="value3"></el-slider>
通过输入框设置精确数值
:::demo 设置`show-input`属性会在右侧显示一个输入框
```html
<el-slider :min="20" :max="80" v-model="value3"></el-slider>
```
## 定义步长
<el-slider :step="10" v-model="value4"></el-slider>
```html
<el-slider :step="10" v-model="value4"></el-slider>
```
## 显示间断点
<el-slider :step="10" show-stops v-model="value5"></el-slider>
```html
<el-slider :step="10" show-stops v-model="value5"></el-slider>
```
## 带有输入框
<el-slider show-input v-model="value6"></el-slider>
```html
<el-slider show-input v-model="value6"></el-slider>
<template>
<div class="block">
<el-slider
v-model="value5"
show-input>
</el-slider>
</div>
</template>
<script>
export default {
data() {
return {
value5: 0
}
}
}
</script>
```
:::
## API
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|---------- |-------------- |---------- |-------------------------------- |-------- |
| value | 绑定值 | number | | 最小值 min |
| min | 最小值 | number | | 0 |
| max | 最大值 | number | | 100 |
| step | 步长 | number | | 1 |
| showInput | 是否显示输入框 | boolean | | false |
| showStops | 是否显示间断点 | boolean | | false |
| change | 值改变时的回调函数 | function | | |
| min | 最小值 | number | - | 0 |
| max | 最大值 | number | - | 100 |
| step | 步长 | number | - | 1 |
| showInput | 是否显示输入框 | boolean | - | false |
| showStops | 是否显示间断点 | boolean | - | false |
## Events
| 事件名称 | 说明 | 回调参数 |
|---------- |-------- |---------- |
| change | 值改变时触发 | 改变后的值 |

View File

@ -14,6 +14,7 @@
background-color: #fff;
color: #5e6d82;
font-size: 14px;
margin-bottom: 45px;
strong {
font-weight: normal;

View File

@ -9,7 +9,7 @@
</div>
</div>
<div class="el-dialog__body"><slot></slot></div>
<div class="el-dialog__footer">
<div class="el-dialog__footer" v-if="$slots.footer">
<slot name="footer"></slot>
</div>
</div>

View File

@ -7,6 +7,11 @@ let seed = 1;
var Message = function(options) {
options = options || {};
if (typeof options === 'string') {
options = {
message: options
}
}
let userOnClose = options.onClose;
let id = 'message_' + seed++;

View File

@ -15,7 +15,7 @@
background-color: #fff;
transition: opacity 0.3s, top 0.4s;
overflow: hidden;
z-index: 1000;
z-index: 2000;
@e group {
margin-left: 28px;

View File

@ -14,7 +14,7 @@
box-shadow: 0 0 6px rgba(0, 0, 0, .04), 0 2px 4px rgba(0, 0, 0, .12);
transition: opacity 0.3s, transform .3s, right .3s, top 0.4s;
overflow: hidden;
z-index: 1000;
z-index: 2000;
@e group {
& span {