作业提交

来源:3-5 CLI初试:启动 Nest 应用程序 + 创建控制器

ghnhmgkjfcg

2022-11-15

// user.controller
import { Controller, Get, Query } from '@nestjs/common';
import { UserService, GetNumber } from './user.service';

@Controller('user')
export class UserController {
  constructor(private readonly UserService: UserService) {}
  @Get()
  getUsers(): any {
    return {
      code: 0,
      data: [],
      msg: '请求成功',
    };
  }

  @Get('/range')
  getNum(@Query() query: { num: string }): GetNumber {
    return this.UserService.getNumber(query.num);
  }
}

//user.service 
import { Injectable } from '@nestjs/common';

export interface GetNumber {
  code: number;
  msg: string;
  data: string[];
}

@Injectable()
export class UserService {
  getNumber(num: string): GetNumber {
    const regExp = /^[0-9]*[1-9][0-9]*$/;
    if (!regExp.test(num)) {
      return {
        code: 5000,
        msg: '请求失败,请输入正整数',
        data: [],
      };
    }
    const arr: string[] = [];
    for (let i = 1; i <= Number(num); i++) {
      arr.push(String(i));
    }
    return {
      code: 0,
      msg: '请求成功',
      data: arr,
    };
  }
}

写回答

3回答

zakerking1991

2023-03-18

import { Controller, Get, Req } from '@nestjs/common';
import { Request } from 'express';
import { RangeService } from './range.service';

@Controller('range')
export class RangeController {
  constructor(private readonly rangeService: RangeService) {}

  @Get('list')
  getRange(@Req() request: Request): RestResponse<string[]> {
    return this.rangeService.getRange(request.query);
  }
}
import { Injectable } from '@nestjs/common';

@Injectable()
export class RangeService {
  getRange(query: Record<string, any>): RestResponse<string[]> {
    const { num } = query;
    return {
      success: true,
      data: !(typeof num === 'string' && /^\d+$/.test(num))
        ? undefined
        : new Array(+num).fill(0).map((_, i) => `${i + 1}`),
      code: 0,
    };
  }
}


1
1
Brian
Nice啊,ES6学的不错,细节+num, Array fill,加油。
2023-03-28
共1条回复

前端不搬砖

2022-11-19

111

0
1
Brian
不要灌水哦~~~
2023-03-28
共1条回复

Brian

2022-11-15

只能给80分,小伙伴,要好好的审题。

if (num == 5)

你这个条件,相当于,把整个后端的逻辑写死了哦~~~

要思考,怎么获取前端的参数(这个部分是需要自学的https://docs.nestjs.cn/,后面也会讲)

0
2
Brian
回复
ghnhmgkjfcg
Nice,加油~~~
2022-11-21
共2条回复

NestJS 入门到实战 前端必学服务端新趋势

近几年快速发展的Node.js框架,掌握未来前端工程师后端开发能力

569 学习 · 238 问题

查看课程

相似问题

3-5 作业提交

回答 1

作业提交

回答 1

3-5 交作业

回答 1

作业提交

回答 1

3-5 提交作业

回答 1