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

见信
2023-11-23
common/ResponseResult
type ResponseResultParams<T> = Partial<{
code: number;
msg: string;
data: T;
}>;
class ResponseResult<T = any> {
code: number;
msg: string;
data?: T;
constructor({ code = 0, msg = '请求成功', data }: ResponseResultParams<T>) {
this.code = code;
this.msg = msg;
if (data) this.data = data;
}
}
export default ResponseResult;
module
import { Controller, Get, Query } from '@nestjs/common';
import { RangeService } from './range.service';
@Controller('range')
export class RangeController {
constructor(private rangeService: RangeService) {}
@Get()
getRange(@Query('range') range: string) {
return this.rangeService.getRange(range);
}
}
service
import { Injectable } from '@nestjs/common';
import ResponseResult from '../common/ResponseResult';
@Injectable()
export class RangeService {
getRange(range: string): ResponseResult<Array<string>> {
// 类型转换
const realRange: number = +range;
if (isNaN(realRange)) {
return new ResponseResult({
code: 1,
msg: 'range参数请填写数字字符串',
});
}
// 判断是否越界
if (realRange < 0) {
return new ResponseResult({
code: 2,
msg: 'range参数请填写一个>= 0的数字字符串',
});
}
// 参数正确
const arr: Array<string> = [];
if (realRange > 0) {
for (let i = 1; i <= realRange; i++) {
arr.push(`${i}`);
}
}
return new ResponseResult({
data: arr,
});
}
}
写回答
1回答
-
Brian
2023-11-27
代码作业写的不错,100分
继续保持努力,不断提高自己的编程能力。加油!
00