Browse Source

隐藏无数据

lwx_v1
liwenxuan 2 years ago
parent
commit
d12ef33357
  1. 11
      src/api/knowledge/types.ts
  2. 1
      src/store/modules/knowledge.ts
  3. 2
      src/views/knowledge/knowledge/components/KnowledgeContent.vue
  4. 37
      src/views/knowledge/knowledge/components/Navili.vue
  5. 71
      src/views/knowledge/knowledge/components/archivestype.vue
  6. 73
      src/views/knowledge/knowledge/index.vue

11
src/api/knowledge/types.ts

@ -24,7 +24,8 @@ export interface UserDetail {
//导航栏查询
export interface NaviQuery {
atParentId: string;
userkey: String,
usertoken: String,
}
//导航栏信息
export interface Navi{
@ -42,8 +43,8 @@ export interface Navi{
atUid:string;
//排序
atSort:string;
/* //card
hasCard:Boolean; */
//该导航栏中有无card
hasCard:Boolean;
}
export type cardList = PageResult<Graphicform[]>
//卡片
@ -161,6 +162,6 @@ interface PageResultJava<T> {
//标题下有无内容
export interface ShowTitle {
atIdAndGParentSun: string;
hasCard:Boolean;
atIdAndGParentSun: string;//导航栏id
hasCard:Boolean;//是否展示
}

1
src/store/modules/knowledge.ts

@ -1,6 +1,5 @@
import { defineStore } from 'pinia'
import { ShowTitle } from '@/api/knowledge/types';
import KnowledgeContentVue from '@/views/knowledge/knowledge/components/KnowledgeContent.vue';
// 第一个参数是应用程序中 store 的唯一 id
export const useKnowledgeStore = defineStore('knowledge', {

2
src/views/knowledge/knowledge/components/KnowledgeContent.vue

@ -43,7 +43,7 @@ watch(() => props.isShow, () => {
} else {
pdfIframeShow.value = true
}
console.log(pdfIframeShow.value)
//console.log(pdfIframeShow.value)
}
})
onMounted(() => {

37
src/views/knowledge/knowledge/components/Navili.vue

@ -1,8 +1,5 @@
<script lang='ts' setup>
import { scrollTo } from '@/api/knowledge/scroll'
import { useKnowledgeStore } from "@/store/modules/knowledge"
import { ShowTitle } from '@/api/knowledge/types'
import { storeToRefs } from 'pinia';
const showli = ref(true);
const props = defineProps({
oneli: {
@ -25,40 +22,6 @@ const props = defineProps({
type: Number,
}
})
function navShow() {
//
const KnowledgeStore = useKnowledgeStore();
let {knowledgeTitlesShow} = storeToRefs(KnowledgeStore)
// const
//const data = ref<ShowTitle[]>(KnowledgeStore.knowledgeTitlesShow);
console.log("knowledgeTitlesShow--->",knowledgeTitlesShow.value,KnowledgeStore)
if(knowledgeTitlesShow.value && knowledgeTitlesShow.value.length > 0){
knowledgeTitlesShow.value.forEach((val,index)=>{
console.log("index--->",index)
console.log("val--->",val)
})
}
// console.log("data.value.length="+data.value.length)
// for (let item of knowledgeTitlesShow.value) {
// console.log(1)
// console.log(item)
// if (item.hasCard == false) {
// console.log(item)
// showli.value = false;
// }
// }
}
watch(() => [props.fatherisReady1], (newVal, oldVal) => {
// navShow()
})
</script>
<template>

71
src/views/knowledge/knowledge/components/archivestype.vue

@ -1,17 +1,13 @@
<script lang='ts' setup>
import { useUserStore } from "@/store/modules/user"
import { ref, watch } from 'vue'
import { getUserDetail, getZxxyNavis, getTuijian } from '@/api/knowledge/index'
import { getTuijian } from '@/api/knowledge/index'
import KnowledgeContent from '@/views/knowledge/knowledge/components/KnowledgeContent.vue'
import { UserQuery, UserDetail, NaviQuery, Navi, Graphicform, PageParam, ShowTitle } from '@/api/knowledge/types'
import { UserDetail, NaviQuery, Navi, Graphicform, PageParam, ShowTitle } from '@/api/knowledge/types'
import { formatDate } from '@/api/knowledge/scroll'
import { useRouter } from 'vue-router'
import errimg from '@/assets/404_images/imgNotFound.png'
import { useKnowledgeStore } from "@/store/modules/knowledge"
const showArea = ref(true);
const props = defineProps({
@ -40,9 +36,6 @@ const props = defineProps({
const userStore = useUserStore();
const { userKey, userToken } = userStore;
const userDetail = ref<UserDetail>({
//
idcardno: ["1", "2"],
@ -59,15 +52,12 @@ const userDetail = ref<UserDetail>({
});
const tuijianPage = ref<Graphicform[]>();
/* const naviList = ref<Navi[]>(); */
/* //用户信息查询参数
const userQueryParam = reactive<UserQuery>({
userkey: userKey,
usertoken: userToken,
}); */
//navi
const naviQueryParam = reactive<NaviQuery>({
atParentId: "",//
userkey: userKey,
usertoken: userToken,
});
const pageParamTuijian = reactive<PageParam>({
total: 0,
@ -89,14 +79,6 @@ function errorImg(e: any) {
//.once
e.srcElement.onerror = null; //
}
onMounted(() => {
//console.log(props.liContent?.gParentSun)
//console.log(useKnowledgeStore().$state)
});
watch(() => [props.fatherisReady, props.liContent, props.routerUrl], (newVal, oldVal) => {
//console.log(newVal, oldVal); // [11, 22], [1, 2]
@ -115,8 +97,9 @@ watch(() => [props.fatherisReady, props.liContent, props.routerUrl], (newVal, ol
}
pageParamTuijian.gParentSun = liContent.atId;
//console.log(pageParamTuijian.gParentSun)
//
if (props.liContent?.hasCard == true) {
//console.log(props.liContent?.hasCard)
getTuijian(pageParamTuijian)
.then(({ data }) => {
tuijianPage.value = data.list
@ -140,43 +123,11 @@ watch(() => [props.fatherisReady, props.liContent, props.routerUrl], (newVal, ol
state.knowledgeTitlesShow.push({ atIdAndGParentSun: liContent.atId, hasCard: false })
})
showArea.value = false;
//showArea.value = false;
}
});
})
/* watch(props.fatherisReady, (value) => {
console.log(props);
//childList.value = nweProps.listData
let router = useRouter()
let routerUrl = toRaw(router).currentRoute.value.fullPath
console.log(routerUrl)
if (routerUrl.endsWith("index")) {//
naviQueryParam.atParentId = '16213848089876281'
pageParamTuijian.archivesTypeAtParentId = '16213848089876281'
} else if (routerUrl.endsWith("news")) {//
naviQueryParam.atParentId = '16213847972425134'
pageParamTuijian.archivesTypeAtParentId = '16213847972425134'
}
pageParamTuijian.gParentSun = props.liContent?.gParentSun;
//
getTuijian(pageParamTuijian)
.then(({ data }) => {
tuijianPage.value = data.list
pageParamTuijian.page = data.pageNum
pageParamTuijian.total = data.total
console.log(tuijianPage.value)
});
}) */
})
function handleCurrentChange() {
@ -185,8 +136,6 @@ function handleCurrentChange() {
tuijianPage.value = data.list
pageParamTuijian.page = data.pageNum
pageParamTuijian.total = data.total
console.log(tuijianPage.value)
});
}
@ -208,7 +157,7 @@ function showContentDialog(item: any) {
</script>
<template>
<div class="models " v-if="showArea">
<div class="models ">
<KnowledgeContent v-model:isShow="showContentBox" :contentSource="cardContentSource"></KnowledgeContent>
<div class="model-title">
<h3>{{ props.liContent?.atTitle }}</h3>

73
src/views/knowledge/knowledge/index.vue

@ -1,6 +1,6 @@
<script lang='ts' setup>
import { useUserStore } from "@/store/modules/user"
import { useKnowledgeStore } from "@/store/modules/knowledge"
import { ref } from 'vue'
import { getUserDetail, getZxxyNavis, getTuijian, getCarousel } from '@/api/knowledge/index'
import Archivestype from '@/views/knowledge/knowledge/components/archivestype.vue'
@ -16,8 +16,7 @@ const active = ref(0); // 当前激活的导航索引
const userStore = useUserStore();
const { userKey, userToken } = userStore;
//
const KnowledgeStore = useKnowledgeStore();
const userDetail = ref<UserDetail>({
//
@ -36,6 +35,7 @@ const userDetail = ref<UserDetail>({
const tuijianPage = ref<Graphicform[]>();
const naviList = ref<Navi[]>();
const naviList1 = ref<Navi[]>();
//
const userQueryParam = reactive<UserQuery>({
userkey: userKey,
@ -44,6 +44,8 @@ const userQueryParam = reactive<UserQuery>({
//navi
const naviQueryParam = reactive<NaviQuery>({
atParentId: "",//
userkey: userKey,
usertoken: userToken,
});
const pageParamTuijian = reactive<PageParam>({
total: 0,
@ -66,10 +68,15 @@ function errorImg(e: any) {
e.srcElement.onerror = null; //
}
const fatherisReady = ref(0);
const fatherisReady1 = ref(0);
const router = useRouter()
const routerUrl = toRaw(router).currentRoute.value.fullPath
onBeforeMount(() => {
//
getUserDetail(userQueryParam)
.then(({ data }) => {
userDetail.value = data
});
})
@ -88,45 +95,20 @@ onMounted(() => {
getZxxyNavis(naviQueryParam)
.then(({ data }) => {
naviList.value = data
//console.log(naviList.value)
}).finally(() => {
fatherisReady.value = 100;
})
//
getUserDetail(userQueryParam)
.then(({ data }) => {
userDetail.value = data
//console.log(userDetail.value)
});
//
getTuijian(pageParamTuijian)
.then(({ data }) => {
tuijianPage.value = data.list
pageParamTuijian.page = data.pageNum
pageParamTuijian.total = data.total
//console.log(tuijianPage.value)
}).finally(()=>{
fatherisReady1.value = 9;
});
getCarousel(pageParamTuijian)
.then(({ data }) => {
carousel.value = data.list
//console.log(tuijianPage.value)
});
//setTimeout(function(){ fatherisReady.value = 100;}, 3000);  //
});
@ -145,8 +127,6 @@ function handleCurrentChange() {
tuijianPage.value = data.list
pageParamTuijian.page = data.pageNum
pageParamTuijian.total = data.total
//console.log(tuijianPage.value)
});
}
@ -156,7 +136,6 @@ const cardContentSource = ref<Graphicform>({});
const showContentBox = ref(false); //
function showContentDialog(item: any) {
showContentBox.value = true;
cardContentSource.value = item;
}
@ -164,7 +143,6 @@ function showContentDialog(item: any) {
</script>
<template>
<div class="app-container">
<KnowledgeContent v-model:isShow="showContentBox" :contentSource="cardContentSource"></KnowledgeContent>
<!-- 内容区域 -->
@ -210,9 +188,11 @@ function showContentDialog(item: any) {
@current-change="handleCurrentChange" />
</div>
<!-- 各知识/新闻分区 -->
<Archivestype v-for="(item, index) in naviList" :liContent=item :index=(index) :fatherisReady="fatherisReady"
:routerUrl="routerUrl">
</Archivestype>
<template v-for="(item, index) in naviList">
<Archivestype :liContent=item :index=(index) :fatherisReady="fatherisReady" :routerUrl="routerUrl"></Archivestype>
</template>
@ -224,21 +204,19 @@ function showContentDialog(item: any) {
<li :class="{ active: active === 0 }" @click="scrollTo(0)">
推荐
</li>
<Navili v-for="(item, index) in naviList" :class="{ active: active === index+1 }" :oneli=item :index=(index+1) :fatherisReady1="fatherisReady1"
:active=active @click="scrollTo(index + 1)"></Navili>
</ul>
<template v-for="(item, index) in naviList">
<Navili :class="{ active: active === index+1 }" :oneli=item :index=(index+1) v-if="item.hasCard" :active=active
@click="scrollTo(index + 1)"></Navili>
</template>
</ul>
</div>
</template>
<style scoped>
.content {
background-color: white;
width: 89.1%;
@ -248,18 +226,11 @@ function showContentDialog(item: any) {
}
/* .models {
min-height: 500px;
} */
/* 导航栏的样式 */
.navs {
/* border:black 1px solid; */
width: 192px;
@ -267,8 +238,6 @@ function showContentDialog(item: any) {
height: auto;
top: 95px;
/* box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; */
/* box-shadow: rgb(204, 219, 232) 3px 3px 6px 0px inset, rgba(255, 255, 255, 0.5) -3px -3px 6px 1px inset; */
}
.navs li {

Loading…
Cancel
Save