import { ref } from "vue"; import type PageSearch from "@/components/PageSearch/index.vue"; import type PageContent from "@/components/PageContent/index.vue"; import type PageModal from "@/components/PageModal/index.vue"; import type { IOperatData, IObject } from "@/components/PageContent/index.vue"; export type { IOperatData, IObject }; function usePage() { const searchRef = ref>(); const contentRef = ref>(); const addModalRef = ref>(); const editModalRef = ref>(); // 搜索 function handleQueryClick(queryParams: IObject) { contentRef.value?.fetchPageData(queryParams, true); } // 重置 function handleResetClick() { contentRef.value?.fetchPageData({}, true); } // 新增 function handleAddClick() { //显示添加表单 addModalRef.value?.setModalVisible(); } // 编辑 function handleEditClick(row: IObject) { //显示编辑表单 根据数据进行填充 editModalRef.value?.setModalVisible(row); } // 表单提交 function handleSubmitClick() { //刷新列表数据 contentRef.value?.fetchPageData({}, true); } // 导出 function handleExportClick() { // 根据检索条件导出数据 const queryParams = searchRef.value?.getQueryParams(); contentRef.value?.exportPageData(queryParams); } return { searchRef, contentRef, addModalRef, editModalRef, handleQueryClick, handleResetClick, handleAddClick, handleEditClick, handleSubmitClick, handleExportClick, }; } export default usePage;