feat: 完善标签分类功能

This commit is contained in:
橙子
2025-01-19 15:17:48 +08:00
parent 811e5c1a8c
commit 2c9d344b76
14 changed files with 172 additions and 50 deletions

View File

@@ -40,7 +40,8 @@
<!-- 底部 -->
<div class="item item-bottom">
<div class="tag-list">
<el-tag v-for="i in 4" :key="i">教程</el-tag>
<el-tag v-if="discuss.lables.length===0">暂无标签</el-tag>
<el-tag v-for="item in discuss.lables" :key="item.id">{{item.name}}</el-tag>
</div>
<el-space :size="10" :spacer="spacer">
<div class="item-description">
@@ -80,7 +81,8 @@ const discuss = reactive({
agreeNum: 0,
isAgree: false,
cover: "",
isBan: false
isBan: false,
lables:[]
});
const router = useRouter();
const spacer = h(ElDivider, { direction: "vertical" });
@@ -113,15 +115,6 @@ const agree = async () => {
}
};
onMounted(() => {
// id:'',
// title:"",
// introduction:"",
// creationTime:"",
// user:{},
// color:"",
// seeNum:0,
// agreeNum:0,
// isAgree:""
discuss.id = props.discuss.id;
discuss.title = props.discuss.title;
discuss.introduction = props.discuss.introduction;
@@ -133,8 +126,7 @@ onMounted(() => {
discuss.agreeNum = props.discuss.agreeNum;
discuss.isBan = props.discuss.isBan;
discuss.cover = props.discuss.cover;
discuss.value = props.isAgree;
discuss.value = props.agreeNum;
discuss.lables=props.discuss.lables
});
</script>
<style scoped lang="scss">

View File

@@ -99,9 +99,9 @@
>
<el-option
v-for="item in labelListData"
:key="item.value.id"
:label="item.label"
:value="item.value"
:key="item.id"
:label="item.name"
:value="item"
/>
</el-select>
</el-form-item>
@@ -201,12 +201,7 @@ const remoteMethod = async (query) => {
labelLoading.value = true
const {data} = await getLableAllList({name:query});
labelLoading.value = false
labelListData.value = data.items.map((item) => {
return {
value: item,
label: item.name
}
})
labelListData.value = data.items;
}
//文件上传成功后
@@ -279,6 +274,7 @@ const submit = async (formEl) => {
}
//主题更新
else if (route.query.operType == "update") {
discuss.discussLables=selectLabelList.value.map((item) =>item.id);
await discussUpdate(route.query.discussId, discuss);
ElMessage({
@@ -322,11 +318,6 @@ const submit = async (formEl) => {
router.push(routerPer);
}
}
//添加成功后跳转到该页面
// var routerPer = { path: `/discuss/${discuss.plateId}` };
// router.push(routerPer);
// ruleFormRef.value.resetFields();
// discuss.plateId = route.query.plateId;
}
});
};
@@ -351,6 +342,12 @@ const loadDiscuss = async () => {
editForm.content = res.content;
editForm.title = res.title;
editForm.introduction = res.introduction;
editForm.discussLables=res.discussLables;
//编辑状态,已选择的就是全部
labelListData.value=res.lables;
selectLabelList.value=res.lables;
discuss.plateId = res.plateId;
dialogImageUrl.value = res.cover;
perRadio.value = res.permissionType;