79 lines
1.8 KiB
Vue
79 lines
1.8 KiB
Vue
<template>
|
||
<el-row type="flex" style="padding: 40px 20px">
|
||
<div class="img">
|
||
<el-image :src="data.image" alt />
|
||
</div>
|
||
<div class="content">
|
||
<div class="tit" @click="handleDetail(data.id)">
|
||
<div class="text" style="flex: 1">{{ data.name }}</div>
|
||
</div>
|
||
<div class="line">
|
||
企业规模:
|
||
<span>{{ data.kind_title || "后台暂没提供" }}</span>
|
||
</div>
|
||
<div class="line">
|
||
核心产品及应用场景: <span>{{ data.product }}</span>
|
||
</div>
|
||
<div class="line">
|
||
企业网站:
|
||
<a :href="data.url"
|
||
><span>{{ data.url || "后台暂没提供" }}</span></a
|
||
>
|
||
</div>
|
||
</div>
|
||
<div class="keywords" style="flex: 1">
|
||
<wordcloud
|
||
:data="createdData(data.keyword?.split(',') ?? [])"
|
||
></wordcloud>
|
||
</div>
|
||
</el-row>
|
||
</template>
|
||
|
||
<script setup>
|
||
import wordcloud from "./wordcloud.vue";
|
||
import { useRoute, useRouter } from "vue-router";
|
||
import { addViewHistory } from "@/utils/view_history";
|
||
const route = useRoute();
|
||
const router = useRouter();
|
||
const props = defineProps({
|
||
data: {
|
||
type: Object,
|
||
required: true,
|
||
},
|
||
});
|
||
function createdData(arr) {
|
||
let l = [];
|
||
let snap = JSON.parse(JSON.stringify(arr));
|
||
snap.map((e) => {
|
||
l.push({ name: e, value: 30 });
|
||
return { name: e, value: 30 };
|
||
});
|
||
return l;
|
||
}
|
||
function handleDetail(id) {
|
||
let routeData = router.resolve({
|
||
path: `/searchList/enterprise/detail/${id}`,
|
||
query: {
|
||
keyword: route.query.keyword,
|
||
queryType: route.query.queryType,
|
||
},
|
||
});
|
||
window.open(routeData.href, "_blank");
|
||
}
|
||
</script>
|
||
|
||
<style scoped lang="scss">
|
||
.img {
|
||
width: 90px;
|
||
margin-right: 12px;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: center;
|
||
:deep(.el-image) {
|
||
width: 90px;
|
||
height: 90px;
|
||
border-radius: 50%;
|
||
}
|
||
}
|
||
</style>
|