소스 검색

fix: refactoring

IlhamTahir 1 년 전
부모
커밋
21b59e8272
6개의 변경된 파일16개의 추가작업 그리고 15개의 파일을 삭제
  1. 2 0
      components.d.ts
  2. 2 2
      src/api/category.ts
  3. 4 5
      src/pages/category/components/CategoryDialog.vue
  4. 5 5
      src/pages/category/index.vue
  5. 2 2
      src/router/index.ts
  6. 1 1
      vite.config.ts

+ 2 - 0
components.d.ts

@@ -18,6 +18,8 @@ declare module 'vue' {
     TCard: typeof import('tdesign-vue-next')['Card']
     TDialog: typeof import('tdesign-vue-next')['Dialog']
     TDropdown: typeof import('tdesign-vue-next')['Dropdown']
+    TForm: typeof import('tdesign-vue-next')['Form']
+    TFormItem: typeof import('tdesign-vue-next')['FormItem']
     THeader: typeof import('tdesign-vue-next')['Header']
     TIcon: typeof import('tdesign-vue-next')['Icon']
     TImageViewer: typeof import('tdesign-vue-next')['ImageViewer']

+ 2 - 2
src/api/category.ts

@@ -2,7 +2,7 @@ import httpClient from '@/api/httpClient'
 import type { PageResult } from '@/model/base'
 import type { Category,CategorySearchFilter, } from '@/model/category'
 
-export const searchCategoryRequest = (categoryFilterParam:CategorySearchFilter ) => {
+export const searchCategories = (categoryFilterParam:CategorySearchFilter ) => {
   return httpClient.get<PageResult<Category>>('/categories',categoryFilterParam)
 }
 export const searchCategoryListRequest = ( ) => {
@@ -23,4 +23,4 @@ export const searchCategoryByIdRequest = (id: string) => {
 
 export const updateCategoryByIdRequest = (id: string,category: Pick<Category,'name'|'code'|'order'>) => {
   return httpClient.put<Category>(`/categories/${id}`,category)
-}
+}

+ 4 - 5
src/pages/category/components/CategoryDialog.vue

@@ -36,13 +36,12 @@ import { createCategoryRequest, updateCategoryByIdRequest } from '@/api/category
 import type { FormInstanceFunctions, FormProps } from 'tdesign-vue-next'
 import { MessagePlugin } from 'tdesign-vue-next'
 const props = defineProps<{
-  isEdit?: Boolean | null
-  headerTitle?: String | null
-  category: Category | {}
+  headerTitle?: string
+  category: Category | null
 }>()
 const form = ref<FormInstanceFunctions | null>(null)
-const header = computed(() => `${props.isEdit ? '编辑' : '创建'}${props.headerTitle || ''}`)
-const confirmBtn = computed(() => (props.isEdit ? '保存' : '确定'))
+const header = computed(() => `${props.category ? '编辑' : '创建'}${props.headerTitle || ''}`)
+const confirmBtn = computed(() => (props.category ? '保存' : '确定'))
 const categoryData: FormProps['data'] = reactive({ name: '', order: 1 })
 const rules: FormProps['rules'] = {
   name: [

+ 5 - 5
src/pages/category/index.vue

@@ -2,7 +2,7 @@
 import { onMounted, ref } from 'vue'
 import type { Category, CategorySearchFilter } from '@/model/category'
 import RegularPage from '@/components/RegularPage.vue'
-import { searchCategoryRequest, deleteCategoryRequest } from '@/api/category'
+import { searchCategories, deleteCategoryRequest } from '@/api/category'
 import type { BaseTableColumns } from 'tdesign-vue-next'
 import { useSearchable } from '@/composables/useSearchable'
 import CategoryDialog from '@/pages/category/components/CategoryDialog.vue'
@@ -11,7 +11,7 @@ import { MessagePlugin } from 'tdesign-vue-next'
 const { data, loading, pagination, onPageChange, fetchData } = useSearchable<
   CategorySearchFilter,
   Category
->(searchCategoryRequest)
+>(searchCategories)
 const columns: BaseTableColumns = [
   {
     title: '分类名称',
@@ -36,7 +36,7 @@ const columns: BaseTableColumns = [
 ]
 const categoryDialogVisible = ref(false)
 const isEdit = ref(false)
-const currentTableData = ref<Category | {}>({})
+const currentTableData = ref<Category | null>(null)
 onMounted(fetchData)
 const editClick = (category: Category) => {
   isEdit.value = true
@@ -49,8 +49,9 @@ const handleCategoryDialogSuccess = () => {
 }
 const handleCategoryDialogClosed = () => {
   isEdit.value = false
-  currentTableData.value = {}
+  currentTableData.value = null
 }
+
 const deleteCategoryClick = async (id: string) => {
   await deleteCategoryRequest(id)
   fetchData()
@@ -97,7 +98,6 @@ const deleteCategoryClick = async (id: string) => {
     </TTable>
     <CategoryDialog
       headerTitle="分类"
-      :isEdit="isEdit"
       :category="currentTableData"
       v-model:visible="categoryDialogVisible"
       @closed="handleCategoryDialogClosed"

+ 2 - 2
src/router/index.ts

@@ -20,7 +20,7 @@ export const asyncRoutes: RouteRecordRaw[] = [
     component: () => import('@/pages/article/index.vue'),
     meta: {
       title: '咨询管理',
-      icon: 'folder-details'
+      icon: 'collection'
     }
   },
   {
@@ -29,7 +29,7 @@ export const asyncRoutes: RouteRecordRaw[] = [
     component: () => import('@/pages/carousal/index.vue'),
     meta: {
       title: '轮播图管理',
-      icon: 'system-3'
+      icon: 'image'
     }
   },
 ]

+ 1 - 1
vite.config.ts

@@ -44,7 +44,7 @@ export default defineConfig(({ command, mode }) => {
         '/api': {
           target: env.VITE_PROXY_ENDPOINT,
           changeOrigin: true,
-          rewrite: (path) => path.replace(/^\/api/, '')
+          // rewrite: (path) => path.replace(/^\/api/, '')
         }
       }
     }