我的收藏加展开收起

This commit is contained in:
lmj
2022-10-22 16:19:51 +08:00
parent aea983d24d
commit 615bfccca1
4 changed files with 61 additions and 11 deletions

View File

@@ -1,19 +1,25 @@
<template>
<div style="cursor: pointer;">
<div class="article-list" v-for="(item, idx) in items" :key="idx" @click="qadetail(item)">
<div class="article-list" v-for="(item, idx) in items" :key="idx" >
<div class="article-info">
<!-- <div class="article-info-title"> -->
<div class="art-head article-info-title" style="line-height: 30px;">
<div @click="qadetail(item)" class="art-head article-info-title" style="line-height: 30px;">
<!-- <span class="qa-basic" :class="item.question.isResolve ? 'qa-solve' : 'qa-unSolve'">{{ item.question.isResolve ? '【已解决】' : '【待解决】' }}</span> -->
<span style="padding-left: 5px">{{ item.question.title }} <span class="qa-bq">#问答#</span> </span>
<el-button @click.stop="delCollectItem(item)" type="text" icon="el-icon-star-on" style="color:#8590A6">取消收藏</el-button>
</div>
<!-- </div> -->
<div class="article-info-summary two-line-ellipsis">{{ item.question.content }}</div>
<div class="article-info-summary">
{{displayAll(item)}}
<span style="color:#588afc;cursor:pointer;" v-if="item.question.content.length>100" @click="changeIsAll(item,idx)">
{{item.isAll?'收起':'展开'}}
</span>
</div>
<div v-if="item.question.isResolve" style=";color: #333330;display:flex;margin-bottom:10px">
<!-- <div style="width:90px"><span>最佳回答:</span></div> -->
<div class="one-line-ellipsis" style="color: #333330;font-size: 14px;padding-top:1px">{{ item.question.bestAnswer }}</div>
<div class="one-line-ellipsis" style="color: #333330;font-size: 14px;padding-top:1px">
{{ item.question.bestAnswer }}</div>
</div>
<interactBar :type="4" :readonly="true" :data="item" :views="false" :shares="false"></interactBar>
@@ -39,6 +45,11 @@ export default {
default: () => []
}
},
data(){
return {
}
},
mounted() {},
components: {
interactBar,
@@ -50,6 +61,17 @@ export default {
}
},
methods: {
displayAll(item) {
if (!item.isAll && item.question.content && item.question.content.length > 100) {
return item.question.content.slice(0, 100) + "...";
}
return item.question.content;
},
changeIsAll(item,idx) {
console.log(item.isAll)
item.isAll = !item.isAll;
this.$set(this.items, idx, item);
},
qadetail(item) {
// let routeData = this.$router.resolve({ path: '/qa/answer?id=' + item.question.id });
// window.open(routeData.href, '_blank');