diff --git a/src/api/axios.ts b/src/api/axios.ts
index 659b3985..d84b4d67 100644
--- a/src/api/axios.ts
+++ b/src/api/axios.ts
@@ -4,7 +4,7 @@ import { PageEnum, ErrorPageNameMap } from "@/enums/pageEnum"
 import { StorageEnum } from '@/enums/storageEnum'
 import { axiosPre } from '@/settings/httpSetting'
 import { SystemStoreEnum, SystemStoreUserInfoEnum } from '@/store/modules/systemStore/systemStore.d'
-import { redirectErrorPage, getLocalStorage, routerTurnByName } from '@/utils'
+import { redirectErrorPage, getLocalStorage, routerTurnByName, httpErrorHandle } from '@/utils'
 import { fetchAllowList } from './axios.config'
 import includes from 'lodash/includes'
 
@@ -67,7 +67,7 @@ axiosInstance.interceptors.response.use(
   (err: AxiosResponse) => {
     const { code } = err.data as { code: number }
     if (ErrorPageNameMap.get(code)) redirectErrorPage(code)
-    window['$message'].error(window['$t']('http.error_message'))
+    httpErrorHandle()
     Promise.reject(err)
   }
 )
diff --git a/src/api/path/project.ts b/src/api/path/project.ts
index 902e412a..acf6762a 100644
--- a/src/api/path/project.ts
+++ b/src/api/path/project.ts
@@ -20,4 +20,14 @@ export const createProjectApi = async (data: object) => {
   } catch {
     httpErrorHandle();
   }
+}
+
+// * 删除项目
+export const deleteProjectApi = async (data: object) => {
+  try { 
+    const res = await http(RequestHttpEnum.DELETE)(`${ModuleTypeEnum.PROJECT}/delete`, data);
+    return res;
+  } catch {
+    httpErrorHandle();
+  }
 }
\ No newline at end of file
diff --git a/src/utils/http.ts b/src/utils/http.ts
index a8a114ca..8e92db7b 100644
--- a/src/utils/http.ts
+++ b/src/utils/http.ts
@@ -2,5 +2,5 @@
  * * 请求失败统一处理
  */
 export const httpErrorHandle = () => {
-  window['$message'].error('请求失败,请稍后重试!')
+  window['$message'].error(window['$t']('http.error_message'))
 }
\ No newline at end of file
diff --git a/src/views/project/items/components/ProjectItemsList/hooks/useData.hook.ts b/src/views/project/items/components/ProjectItemsList/hooks/useData.hook.ts
index 1957f364..3a740275 100644
--- a/src/views/project/items/components/ProjectItemsList/hooks/useData.hook.ts
+++ b/src/views/project/items/components/ProjectItemsList/hooks/useData.hook.ts
@@ -1,8 +1,9 @@
 import { ref, reactive } from 'vue';
-import { goDialog } from '@/utils'
+import { goDialog, httpErrorHandle } from '@/utils'
 import { DialogEnum } from '@/enums/pluginEnum'
-import { projectListApi } from '@/api/path/project'
-import { ChartList } from '../../../index.d'
+import { projectListApi, deleteProjectApi } from '@/api/path/project'
+import { Chartype, ChartList } from '../../../index.d'
+import { ResultEnum } from '@/enums/httpEnum'
 
 // 数据初始化
 export const useDataListInit = () => {
@@ -20,28 +21,25 @@ export const useDataListInit = () => {
 
   // 数据请求
   const fetchList = async () => {
-    try {
-      const res: any = await projectListApi({
-        page: paginat.page,
-        limit: paginat.limit
+    const res: any = await projectListApi({
+      page: paginat.page,
+      limit: paginat.limit
+    })
+    if (res.data) {
+      const { count } = res
+      paginat.count = count
+      list.value = res.data.map((e: any) => {
+        const { id, projectName, state, createTime, createUserId } = e
+        return {
+          id: id,
+          title: projectName,
+          createId: createUserId,
+          time: createTime,
+          release: state !== -1
+        }
       })
-      if (res.data) {
-        const { count } = res
-        paginat.count = count
-        list.value = res.data.map((e:any) => {
-          const {id, projectName, state, createTime, createUserId} = e
-          return {
-            id: id,
-            title: projectName,
-            createId: createUserId,
-            time: createTime,
-            release: state !== -1
-          }
-        })
-      }
-    } catch (error) {
-      window['$message'].error(window['$t']('http.error_message'))
     }
+
   }
 
   // 修改页数
@@ -57,15 +55,22 @@ export const useDataListInit = () => {
   }
 
   // 删除
-  const deleteHandle = (cardData: object, index: number) => {
+  const deleteHandle = (cardData: Chartype, index: number) => {
     goDialog({
       type: DialogEnum.DELETE,
       promise: true,
-      onPositiveCallback: () =>
-        new Promise(res => setTimeout(() => res(1), 1000)),
-      promiseResCallback: (e: any) => {
-        window['$message'].success('删除成功')
-        list.value.splice(index, 1)
+      onPositiveCallback: () => new Promise(res => {
+        res(deleteProjectApi({
+          ids: cardData.id
+        }))
+      }),
+      promiseResCallback: (res: any) => {
+        if (res.code === ResultEnum.SUCCESS) {
+          window['$message'].success('删除成功')
+          fetchList()
+          return
+        }
+        httpErrorHandle()
       }
     })
   }
diff --git a/src/views/project/items/components/ProjectItemsList/index.vue b/src/views/project/items/components/ProjectItemsList/index.vue
index 7c969e15..9276347d 100644
--- a/src/views/project/items/components/ProjectItemsList/index.vue
+++ b/src/views/project/items/components/ProjectItemsList/index.vue
@@ -10,7 +10,7 @@
         <project-items-card
           :cardData="item"
           @resize="resizeHandle"
-          @delete="deleteHandle($event, index)"
+          @delete="deleteHandle(item, index)"
           @edit="editHandle"
         ></project-items-card>
       </n-grid-item>