美文网首页让前端飞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