美文网首页让前端飞Web前端之路
Nest.js学习之路(3)-Module in nest.js

Nest.js学习之路(3)-Module in nest.js

作者: cbw100 | 来源:发表于2019-05-25 18:40 被阅读2次

Nest.js应用程序的组成

  • Modules
  • Controllers
  • Providers
    • Services
    • Pipes
    • Guards
    • Interceptors
    • ...

一个Module底下包含一个或多个Controllers或Providers。

nest.js里是用Module来建构应用程式架构,任何nest.js的应用程式一定至少要有一个Root Module,在CLI产生的程式码里为ApplicationModule,透过nest.js提供的Factory Method建立应用程式的实例(Instance)从main.ts程式码中可以看到

import { NestFactory } from '@nestjs/core';
import { ApplicationModule } from './app.module';

async function bootstrap() {
    //NestFactory.create工厂方法载入Root Module,该方法回传nest应用程式物件(实作INestApplication介面)
  const app = await NestFactory.create(ApplicationModule);
  await app.listen(3000);
}
//启动nest应用程式
bootstrap();

依据功能(Feature)需求建立其他Module,例如User Module用来处理使用者资料、Auth Module处理使用者验证等。

Module通常是一个Class并宣告@Module Decorator,指定哪些Controller及Provider在这个Module使用,通常通一个Controller及Provider不能指定给多个Module。

//app.module.ts
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';

@Module({
  imports: [],
  controllers: [AppController],
  providers: [AppService],
})
export class AppModule {}

相关文章

网友评论

    本文标题:Nest.js学习之路(3)-Module in nest.js

    本文链接:https://www.haomeiwen.com/subject/vuicxqtx.html