Files
crmeb_java/admin/src/components/iconFrom/index.vue
张乐 93a781c5ae v1.1
1、提货点
2、客服(腾讯云智服)
3、接口权限控制
4、复制第三方商品可配置
4、优化附件上传配置
5、手机端核销订单
6、手机端订单统计、订单管理
7、短信优化
8、订阅消息全自动化
2020-09-15 16:13:25 +08:00

107 lines
2.1 KiB
Vue

<template>
<div class="iconBox">
<el-input
ref="search"
v-model="iconVal"
placeholder="输入关键词搜索,注意全是英文"
clearable
style="width: 300px"
@input="upIcon(iconVal)"
/>
<div class="icons-container">
<div class="grid">
<div
v-for="item of list"
:key="item"
@click="handleClipboard(generateElementIconCode(item),$event,item)"
>
<el-tooltip placement="top">
<div slot="content">
{{ generateElementIconCode(item) }}
</div>
<div class="icon-item">
<i :class="'el-icon-' + item" />
<span>{{ item }}</span>
</div>
</el-tooltip>
</div>
</div>
</div>
</div>
</template>
<script>
import elementIcons from './element-icons'
export default {
name: 'Index',
data() {
return {
elementIcons,
iconVal: '',
modals2: false,
list: []
}
},
mounted() {
this.list = this.elementIcons
},
methods: {
generateElementIconCode(symbol) {
return `<i class="el-icon-${symbol}" />`
},
handleClipboard(text, event, n) {
this.iconChange(n)
// clipboard(text, event)
},
// 搜索
upIcon(n) {
const arrs = []
for (var i = 0; i < this.elementIcons.length; i++) {
if (this.elementIcons[i].indexOf(n) !== -1) {
arrs.push(this.elementIcons[i])
this.list = arrs
}
}
},
iconChange(n) {
this.$emit('getIcon', n)
this.$msgbox.close()
}
}
}
</script>
<style lang="scss" scoped>
.icons-container {
margin: 10px 20px 0;
overflow: hidden;
.grid {
position: relative;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}
.icon-item {
margin: 10px 20px;
text-align: center;
width: 100px;
float: left;
font-size: 30px;
color: #24292e;
cursor: pointer;
}
span {
display: block;
font-size: 16px;
margin-top: 10px;
}
.disabled {
pointer-events: none;
}
}
</style>