| | |
| | | class="tab" |
| | | v-for="(tab, index) in tabs" |
| | | :key="index" |
| | | @click="selectTab(index)" |
| | | @click="selectTab(index,tab)" |
| | | :class="{ 'active': selectedTab === index }" |
| | | > |
| | | {{ tab }} |
| | | {{ tab.name }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script lang="ts" setup> |
| | | import { computed, ref, reactive, watch, nextTick } from 'vue'; |
| | | import { computed, ref, reactive, watch, nextTick, onBeforeMount } from "vue"; |
| | | import { useI18n } from 'vue-i18n'; |
| | | import useLoading from '@/hooks/loading'; |
| | | import { queryPolicyList, PolicyRecord, PolicyParams } from '@/api/list'; |
| | | import { queryKbList, PolicyRecord, PolicyParams } from '@/api/kbList'; |
| | | import { Pagination } from '@/types/global'; |
| | | import type { SelectOptionData } from '@arco-design/web-vue/es/select/interface'; |
| | | import type { TableColumnData } from '@arco-design/web-vue/es/table/interface'; |
| | |
| | | let visible = ref(false) |
| | | let detailsShow = ref(false) |
| | | let selectedTab = ref(0) |
| | | let tabs = reactive(['法律知识库', '政务知识库', '医学知识库', '其他知识库']) |
| | | let tabs = ref([]) |
| | | |
| | | const selectTab = (index) => { |
| | | const selectTab = (index,item) => { |
| | | selectedTab.value= index; |
| | | console.log(item.id); |
| | | } |
| | | |
| | | const basePagination: Pagination = { |
| | |
| | | }, |
| | | ]); |
| | | const fetchData = async ( |
| | | params: PolicyParams = { current: 1, pageSize: 20 } |
| | | params = { page: 1, page_size: 20 } |
| | | ) => { |
| | | setLoading(true); |
| | | try { |
| | | const { data } = await queryPolicyList(params); |
| | | renderData.value = data.list; |
| | | console.log(renderData, 'renderData'); |
| | | pagination.current = params.current; |
| | | pagination.total = data.total; |
| | | const { data } = await queryKbList(params); |
| | | console.log(data, 'data'); |
| | | // renderData.value = data.list; |
| | | // console.log(renderData, 'renderData'); |
| | | // pagination.current = params.current; |
| | | // pagination.total = data.total; |
| | | } catch (err) { |
| | | // you can report use errorHandler or other |
| | | } finally { |
| | |
| | | fetchData({ ...basePagination, current }); |
| | | }; |
| | | |
| | | fetchData(); |
| | | const knowledgeData = async ( |
| | | params = { page: 1, page_size: 20 } |
| | | ) => { |
| | | setLoading(true); |
| | | try { |
| | | const { data } = await queryKbList(params); |
| | | console.log(data, 'data'); |
| | | tabs.value = data; |
| | | console.log(tabs.value, 'tabs'); |
| | | // fetchData() |
| | | // renderData.value = data.list; |
| | | // console.log(renderData, 'renderData'); |
| | | // pagination.current = params.current; |
| | | // pagination.total = data.total; |
| | | } catch (err) { |
| | | // you can report use errorHandler or other |
| | | } finally { |
| | | setLoading(false); |
| | | } |
| | | }; |
| | | |
| | | const reset = () => { |
| | | formModel.value = generateFormModel(); |
| | | }; |
| | |
| | | }, |
| | | { deep: true, immediate: true } |
| | | ); |
| | | |
| | | onBeforeMount(()=>{ |
| | | knowledgeData() |
| | | }) |
| | | |
| | | </script> |
| | | |
| | | <script lang="ts"> |