通用标签组件,支持实心标签、空心标签、特殊标签、图片标签
效果
使用方法
<template> <div class="wxc-demo"> <scroller class="scroller"> <title title="lc-tag"></title> <category title="默认使用"></category> <div class="tag-list"> <lc-tag v-for="(item,index) in demoData" :key="index" v-bind="item"></lc-tag> </div> <category title="文字标签配置"></category> <div class="sub-demo"> <lc-cell :auto-accessible="false" label="是否为实心"> <switch :checked="type==='solid'" slot="value" @change="type= type==='solid' ?'hollow' : 'solid'"></switch> </lc-cell> <lc-cell :has-top-border="false" :auto-accessible="false" label="标签颜色"> <input class="input" slot="value" placeholder="请输入标签色值" v-model="tagColor" @input="tagColor=$event.value"/> </lc-cell> <lc-cell :has-top-border="false" :auto-accessible="false" label="文字颜色"> <input class="input" slot="value" placeholder="请输入文字色值" v-model="fontColor" @input="fontColor=$event.value"/> </lc-cell> <lc-cell :has-top-border="false" :auto-accessible="false" label="标签内容"> <input class="input" slot="value" placeholder="请输入tag文字内容" v-model="value" @input="value=$event.value"/> </lc-cell> <div class="demo"> <lc-tag :type="type" :tag-color="tagColor" :font-color="fontColor" v-model="value"></lc-tag> </div> </div> <category title="特殊标签配置"></category> <div class="sub-demo"> <lc-cell :has-top-border="false" :auto-accessible="false" label="图片地址"> <input class="input" slot="value" placeholder="请输入tag图片地址" v-model="specialIcon" @input="specialIcon=$event.value"/> </lc-cell> <lc-cell :has-top-border="false" :auto-accessible="false" label="标签颜色"> <input class="input" slot="value" placeholder="请输入标签色值" v-model="tagColor1" @input="tagColor1=$event.value"/> </lc-cell> <lc-cell :has-top-border="false" :auto-accessible="false" label="文字颜色"> <input class="input" slot="value" placeholder="请输入文字色值" v-model="fontColor1" @input="fontColor1=$event.value"/> </lc-cell> <lc-cell :has-top-border="false" :auto-accessible="false" label="标签内容"> <input class="input" slot="value" placeholder="请输入tag文字内容" v-model="value1" @input="value1=$event.value"/> </lc-cell> <div class="demo"> <lc-tag type="special" :specialIcon="specialIcon" :tag-color="tagColor1" :font-color="fontColor1" v-model="value1"></lc-tag> </div> </div> <category title="图片标签配置"></category> <div class="sub-demo"> <lc-cell :has-top-border="false" label="标签内容"> <input class="input" slot="value" placeholder="请输入tag图片链接" v-model="img" @input="img=$event.value"/> </lc-cell> <div class="demo"> <lc-tag type="image" :img="img"></lc-tag> </div> </div> </scroller> </div> </template>
<style scoped> .tag-list { flex-direction: row; justify-content: space-between; padding-top: 40px; padding-right: 24px; padding-left: 24px; padding-bottom: 60px; } .wxc-demo { position: absolute; top: 0; right: 0; left: 0; bottom: 0; background-color: #fff; }
.scroller { flex: 1; } .input { width: 300px; text-align: right; }
.demo { align-items: center; justify-content: center; height: 100px; margin-bottom: 20px; }
</style>
<script> import Data from './tools/tag-data' import Title from 'lighting-ui/packages/_mods/title.vue'; import LcTag from 'lighting-ui/packages/lc-tag'; import LcCell from 'lighting-ui/packages/lc-cell'; import Category from 'lighting-ui/packages/_mods/category.vue';
export default { components: { Title, Category, LcTag, LcCell }, data: () => ({ demoData:Data, type: 'solid', tagColor: '#399DE2', fontColor: '#ffffff', value: '实心标签', img: '//gtms04.alicdn.com/tfs/TB1ZfodRVXXXXciXFXXXXXXXXXX-92-24.png', specialIcon: '//gtms02.alicdn.com/tfs/TB1gC.jRVXXXXaiXFXXXXXXXXXX-32-32.png', tagColor1: '#399DE2', fontColor1: '#399DE2', value1: '实心标签' }) } </script>
|
tag-data.js
const tag1 = { type: 'solid', tagColor: '#399DE2', fontColor: '#ffffff', value: '实心标签' };
const tag2 = { type: 'hollow', tagColor: '#399DE2', fontColor: '#399DE2', value: '空心标签' };
const tag3 = { type: 'special', tagColor: '#399DE2', fontColor: '#399DE2', specialIcon: '//gtms02.alicdn.com/tfs/TB1gC.jRVXXXXaiXFXXXXXXXXXX-32-32.png', value: '特殊标签' };
const tag4 = { type: 'image', img: '//gtms04.alicdn.com/tfs/TB1ZfodRVXXXXciXFXXXXXXXXXX-92-24.png' };
export default { tag1, tag2, tag3, tag4 }
|
可配置参数
Prop |
Type |
Required |
Default |
Description |
type |
String |
N |
solid |
标签的类型(注1) |
value |
String |
Y |
- |
文字标签的文案 |
tag-color |
String |
N |
#ff5000 |
标签颜色 |
font-color |
String |
N |
#ffffff |
文字颜色 |
special-icon |
String |
N |
- |
特殊标签的小icon(注2) |
img |
String |
N |
- |
图片类型tag的图片地址(注3) |
- 注1: type的类型有如下四种solid、hollow、special、image,默认是solid(实心)
- 注2: specialIcon直接使用png会更方便
- 注3: type为image时,img字段为必传