From 28132992c8dc4afaf9311d9ecd4ecd992e43e827 Mon Sep 17 00:00:00 2001 From: longdayi <13477510+longdayilongdayi@user.noreply.gitee.com> Date: Sun, 23 Feb 2025 20:17:53 +0800 Subject: [PATCH] 02232017 --- .../src/models/goods/goods.controller.ts | 38 +++++++++++++++++-- apps/server/src/trpc/trpc.module.ts | 4 +- apps/web/src/app/main/home/page.tsx | 10 ++++- 3 files changed, 46 insertions(+), 6 deletions(-) diff --git a/apps/server/src/models/goods/goods.controller.ts b/apps/server/src/models/goods/goods.controller.ts index 2ec8f88..806acd6 100644 --- a/apps/server/src/models/goods/goods.controller.ts +++ b/apps/server/src/models/goods/goods.controller.ts @@ -1,9 +1,41 @@ -import { Controller, Get } from '@nestjs/common'; +import { Controller, Get, Query, Param } from '@nestjs/common'; @Controller('goods') export class GoodsController { + constructor() { + console.log('goods controller') + } + + // 示例1:基本查询参数 @Get('hello') - getHello(): string { - return 'Hello World!'; + getHello(@Query('name') name?: string) { + return { + message: 'Hello World!', + name: name || 'Guest' + }; + } + + // 示例2:路径参数 + @Get('detail/:id') + getDetail(@Param('id') id: string) { + return { + id: id, + detail: `Detail for product ${id}` + }; + } + + // 示例3:多个查询参数 + @Get('search') + searchProducts( + @Query('keyword') keyword: string, + @Query('page') page: number = 1, + @Query('limit') limit: number = 10 + ) { + return { + keyword, + page, + limit, + results: [] + }; } } diff --git a/apps/server/src/trpc/trpc.module.ts b/apps/server/src/trpc/trpc.module.ts index 222c9c9..ead8b11 100755 --- a/apps/server/src/trpc/trpc.module.ts +++ b/apps/server/src/trpc/trpc.module.ts @@ -16,6 +16,7 @@ import { RoleMapModule } from '@server/models/rbac/rbac.module'; import { TransformModule } from '@server/models/transform/transform.module'; import { ResourceModule } from '@server/models/resource/resource.module'; +import { GoodsModule } from '@server/models/goods/goods.module'; @Module({ imports: [ @@ -33,8 +34,9 @@ import { ResourceModule } from '@server/models/resource/resource.module'; VisitModule, WebSocketModule, ResourceModule, + GoodsModule ], controllers: [], providers: [TrpcService, TrpcRouter, Logger], }) -export class TrpcModule {} +export class TrpcModule { } diff --git a/apps/web/src/app/main/home/page.tsx b/apps/web/src/app/main/home/page.tsx index cef1e06..878e55c 100755 --- a/apps/web/src/app/main/home/page.tsx +++ b/apps/web/src/app/main/home/page.tsx @@ -1,4 +1,5 @@ import { api } from "@nice/client" +import { apiClient } from "@web/src/utils" import { Button, Tag } from "antd" import { useEffect, useMemo, useState } from "react" @@ -10,9 +11,14 @@ function HomePage() { const counterText = useMemo(() => { return `当前计数为:${counter}` }, [counter]) + + const getData = async () => { + const res = await apiClient.get("/goods/hello") + console.log(res) + } useEffect(() => { - console.log(data) - }, [data]) + getData() + }, []) return