NestJS 基础入门:从搭建到核心概念

NestJS 是一个用于构建高效、可扩展的 Node.js 服务器端应用程序的框架。它完美地结合了 OOP(面向对象编程)、FP(函数式编程)和 FRP(函数响应式编程)的元素。本文将带你从零开始了解 NestJS 的核心概念和基础用法。

环境准备与项目搭建

1. 环境准备

首先确保你的开发环境已经安装了 Node.js(推荐 v16 或更高版本)。然后全局安装 NestJS CLI:

npm i -g @nestjs/cli

2. 创建新项目

使用 CLI 创建新项目:

nest new my-nest-project
cd my-nest-project

选择包管理器(npm/yarn/pnpm)后,CLI 会自动创建项目结构并安装依赖。

3. 项目结构

src/
├── app.controller.spec.ts    # 控制器测试文件
├── app.controller.ts         # 基础控制器
├── app.module.ts            # 根模块
├── app.service.ts           # 基础服务
└── main.ts                  # 应用入口文件

核心概念

1. 控制器(Controllers)

控制器负责处理传来的请求和向客户端返回响应:

// src/app.controller.ts
import { Controller, Get, Post, Body } from '@nestjs/common';
import { AppService } from './app.service';

@Controller('api')
export class AppController {
  constructor(private readonly appService: AppService) {}

  @Get('hello')
  getHello(): string {
    return this.appService.getHello();
  }

  @Post('message')
  createMessage(@Body() message: { content: string }) {
    return this.appService.createMessage(message);
  }
}

2. 提供者(Providers)

提供者是 NestJS 中的基础概念,多数情况下用于封装业务逻辑:

// src/app.service.ts
import { Injectable } from '@nestjs/common';

@Injectable()
export class AppService {
  private messages: string[] = [];

  getHello(): string {
    return 'Hello World!';
  }

  createMessage(message: { content: string }): string {
  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值