Merge branch '2.x' into dev

This commit is contained in:
chenjiahan
2020-12-01 10:12:54 +08:00
48 changed files with 259 additions and 178 deletions
+59 -11
View File
@@ -15,7 +15,13 @@ app.use(Badge);
### Basic Usage
```html
<van-badge content="5">
<van-badge :content="5">
<div class="child" />
</van-badge>
<van-badge :content="10">
<div class="child" />
</van-badge>
<van-badge content="Hot">
<div class="child" />
</van-badge>
<van-badge dot>
@@ -24,8 +30,8 @@ app.use(Badge);
<style>
.child {
width: 36px;
height: 36px;
width: 40px;
height: 40px;
background: #f2f3f5;
border-radius: 4px;
}
@@ -35,10 +41,13 @@ app.use(Badge);
### Max
```html
<van-badge content="20" max="9">
<van-badge :content="20" max="9">
<div class="child" />
</van-badge>
<van-badge content="200" max="99">
<van-badge :content="50" max="20">
<div class="child" />
</van-badge>
<van-badge :content="200" max="99">
<div class="child" />
</van-badge>
```
@@ -46,7 +55,10 @@ app.use(Badge);
### Custom Color
```html
<van-badge content="5" color="#1989fa">
<van-badge :content="5" color="#1989fa">
<div class="child" />
</van-badge>
<van-badge :content="10" color="#1989fa">
<div class="child" />
</van-badge>
<van-badge dot color="#1989fa">
@@ -54,10 +66,45 @@ app.use(Badge);
</van-badge>
```
### Standaline
### Custom Content
Use `content` slot to custom :content of badge.
```html
<van-badge content="200" max="99" />
<van-badge>
<div class="child" />
<template #content>
<van-icon name="success" class="badge-icon" />
</template>
</van-badge>
<van-badge>
<div class="child" />
<template #content>
<van-icon name="cross" class="badge-icon" />
</template>
</van-badge>
<van-badge>
<div class="child" />
<template #content>
<van-icon name="down" class="badge-icon" />
</template>
</van-badge>
```
```css
.badge-icon {
display: block;
font-size: 10px;
line-height: 16px;
}
```
### Standalone
```html
<van-badge :content="20" />
<van-badge :content="200" max="99" />
```
## API
@@ -73,9 +120,10 @@ app.use(Badge);
### Slots
| Name | Description |
| ------- | ------------ |
| default | Default slot |
| Name | Description |
| ------- | -------------------- |
| default | Default slot |
| content | Custom badge content |
### Less Variables
+49 -2
View File
@@ -24,14 +24,20 @@ app.use(Badge);
<van-badge :content="5">
<div class="child" />
</van-badge>
<van-badge :content="10">
<div class="child" />
</van-badge>
<van-badge content="Hot">
<div class="child" />
</van-badge>
<van-badge dot>
<div class="child" />
</van-badge>
<style>
.child {
width: 36px;
height: 36px;
width: 40px;
height: 40px;
background: #f2f3f5;
border-radius: 4px;
}
@@ -46,6 +52,9 @@ app.use(Badge);
<van-badge :content="20" max="9">
<div class="child" />
</van-badge>
<van-badge :content="50" max="20">
<div class="child" />
</van-badge>
<van-badge :content="200" max="99">
<div class="child" />
</van-badge>
@@ -59,16 +68,54 @@ app.use(Badge);
<van-badge :content="5" color="#1989fa">
<div class="child" />
</van-badge>
<van-badge :content="10" color="#1989fa">
<div class="child" />
</van-badge>
<van-badge dot color="#1989fa">
<div class="child" />
</van-badge>
```
### 自定义徽标内容
通过 `content` 插槽可以自定义徽标的内容,比如插入一个图标。
```html
<van-badge>
<div class="child" />
<template #content>
<van-icon name="success" class="badge-icon" />
</template>
</van-badge>
<van-badge>
<div class="child" />
<template #content>
<van-icon name="cross" class="badge-icon" />
</template>
</van-badge>
<van-badge>
<div class="child" />
<template #content>
<van-icon name="down" class="badge-icon" />
</template>
</van-badge>
```
```css
.badge-icon {
display: block;
font-size: 10px;
line-height: 16px;
}
```
### 独立展示
当 Badge 没有子元素时,会作为一个独立的元素进行展示。
```html
<van-badge :content="20" />
<van-badge :content="200" max="99" />
```
+13 -13
View File
@@ -18,41 +18,35 @@
</demo-block>
<demo-block :title="t('customColor')">
<van-badge content="5" :color="BLUE">
<van-badge content="5" color="#1989fa">
<div class="child" />
</van-badge>
<van-badge dot :color="BLUE">
<van-badge dot color="#1989fa">
<div class="child" />
</van-badge>
</demo-block>
<demo-block :title="t('standalone')">
<van-badge content="200" max="99" style="margin-left: 16px;" />
<van-badge content="200" max="99" style="margin-left: 16px" />
</demo-block>
</template>
<script>
import { BLUE } from '../../utils/constant';
export default {
i18n: {
'zh-CN': {
max: '最大值',
standalone: '独立展示',
customColor: '自定义颜色',
customContent: '自定义徽标内容',
},
'en-US': {
max: 'Max',
standalone: 'Standalone',
customColor: 'Custom Color',
customContent: 'Custom Content',
},
},
data() {
return {
BLUE,
};
},
};
</script>
@@ -67,10 +61,16 @@ export default {
}
.child {
width: 36px;
height: 36px;
width: 40px;
height: 40px;
background: @gray-2;
border-radius: 4px;
}
.badge-icon {
display: block;
font-size: 10px;
line-height: 16px;
}
}
</style>