RefferenceFileNameList.vue 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <template>
  2. <RefferenceFileNameItem
  3. v-for="(item, index) of document_list"
  4. :knowledge="item"
  5. :key="index"
  6. :knowledgeIndex="index"
  7. @showDocument="handleShowDocument(item)"
  8. />
  9. </template>
  10. <script setup>
  11. import { onMounted, computed } from 'vue';
  12. import RefferenceFileNameItem from './RefferenceFileNameItem.vue';
  13. const props = defineProps({
  14. doc_aggs: Array,
  15. chunks: Array
  16. });
  17. const emit = defineEmits(['showDocDetail']);
  18. const document_list = computed(() => {
  19. const doc_list = props.doc_aggs;
  20. const chunks = props.chunks;
  21. const res_list = [];
  22. const len = doc_list.length;
  23. for (let i = 0; i < len; i++) {
  24. const doc = doc_list[i];
  25. const res_doc = {
  26. doc_id: doc.doc_id,
  27. doc_name: doc.doc_name,
  28. count: doc.count,
  29. page: i
  30. };
  31. const cur_doc_id = doc.doc_id;
  32. const cur_doc_peaces = [];
  33. if (chunks && Array.isArray(chunks)) {
  34. chunks.forEach((item, index) => {
  35. const chunk_doc_id = item.doc_id;
  36. if (cur_doc_id === chunk_doc_id) {
  37. cur_doc_peaces.push(item.content_ltks);
  38. }
  39. });
  40. }
  41. res_doc.content_ltks = cur_doc_peaces;
  42. res_list.push(res_doc);
  43. }
  44. return res_list;
  45. });
  46. /**
  47. * 展示文档详情
  48. * @param item
  49. */
  50. const handleShowDocument = (item) => {
  51. emit('showDocDetail', item);
  52. };
  53. onMounted(() => {
  54. // console.log(props.doc_aggs, '文档信息');
  55. // console.log(props.chunks, '文档碎片');
  56. // const cur_doc_id = props.doc_aggs.doc_id;
  57. // const cur_doc_peaces = [];
  58. // if (props.chunks && Array.isArray(props.chunks)) {
  59. // props.chunks.forEach((item, index) => {
  60. // const chunk_doc_id = item.doc_id;
  61. // if (cur_doc_id === chunk_doc_id) {
  62. // cur_doc_peaces.push(item);
  63. // }
  64. // });
  65. // }
  66. });
  67. </script>