📜  nestjs 创建一个新的应用程序 - Javascript (1)

📅  最后修改于: 2023-12-03 14:44:34.090000             🧑  作者: Mango

使用 NestJS 创建一个新的应用程序 - JavaScript

NestJS 是一个基于 TypeScript 的可扩展的企业级框架,它使用了一些流行的库和模式,使开发变得更加容易和高效。它构建在 Express 和 Fastify 之上,提供了高度抽象化的感觉,同时仍然保留了底层框架的强大功能。

以下是如何使用 NestJS 创建一个新的应用程序的步骤:

步骤1:安装 NestJS CLI

在开始使用 NestJS 之前,你需要安装 NestJS CLI。你可以使用以下命令在全局范围内安装 NestJS CLI:

npm i -g @nestjs/cli
步骤2:创建一个新应用程序

通过使用 NestJS CLI,你可以创建一个基本的 NestJS 应用程序。在你想要创建新应用程序的文件夹中使用以下命令:

nest new projectName

'projectName' 参数是应用程序的名称,并且应该由小写字母、短横线和数字组成。

步骤3:运行应用程序

使用以下命令运行应用程序:

cd projectName
npm run start

现在你可以在你的浏览器中访问 "http://localhost:3000/"。你应该能够看到一条 "Hello World!" 的消息。

步骤4:创建新的模块和控制器

现在你可以创建新的模块和控制器,以在应用程序中添加新的功能。使用以下命令创建新的模块和控制器:

nest g module moduleName
nest g controller controllerName --no-spec

'moduleName' 参数是模块的名称,并且应该由小写字母、短横线和数字组成。'controllerName' 参数是控制器的名称,并且应该由小写字母、短横线和数字组成。忽略 '--no-spec' 参数将默认生成 spec 文件。

步骤5:添加新的路由

现在你可以为新控制器添加新路由,以创建应用程序中的新端点。修改新控制器中的代码:

import { Controller, Get } from '@nestjs/common';

@Controller('new-route')
export class NewController {
  @Get()
  getNewRoute(): string {
    return 'This is a new route!';
  }
}

这将创建一个可以通过以下 URL 访问的新路由:http://localhost:3000/new-route。你将看到 "This is a new route!" 的消息。

注意:'Controller' 装饰器将 'new-route' 字符串传递给控制器类来定义基本路由路径。将其设置为空字符串将创建一个根路径控制器。

步骤6:添加新的服务

现在你可以创建新的服务,以在控制器中处理业务逻辑。使用以下命令创建新的服务:

nest g service serviceName

'serviceName' 参数是服务的名称,并且应该由小写字母、短横线和数字组成。

修改新服务中的代码:

import { Injectable } from '@nestjs/common';

@Injectable()
export class NewService {
  getNewMessage(): string {
    return 'This is a new message!';
  }
}
步骤7:将服务注入到控制器中

修改新控制器中的代码:

import { Controller, Get } from '@nestjs/common';
import { NewService } from './new.service';

@Controller('new-route')
export class NewController {
  constructor(private readonly newService: NewService) {}

  @Get()
  getNewRoute(): string {
    return this.newService.getNewMessage();
  }
}

将服务注入到控制器中的过程称为 "依赖注入"。'NewService' 参数名称是一个标记,用于告诉 NestJS 哪个服务应该被注入。当控制器被实例化时,NestJS 会自动创建 'NewService' 的新实例,然后将其传递给构造函数。

结论

现在你已经知道了如何使用 NestJS 创建一个新的应用程序,并为其添加新的模块、控制器和服务。这仅仅是 NestJS 的一小部分功能,但它为构建可扩展、易于维护的企业级 Web 应用程序提供了一个强大的平台。