# Nest9.0 系列 - 06 - Nest 集成静态资源服务
所有 Web 开发框架都有静态资源服务,Nest 也不例外,通常静态资源我们可以交给 Nginx 处理,但是本地开发多是采用 web 框架提供
# 首先我们需要安装所需的包
$ npm install @nestjs/serve-static -S |
# 修改 app.modeule.ts
import { Module } from '@nestjs/common'; | |
import { AppController } from './app.controller'; | |
import { AppService } from './app.service'; | |
import { HttpModule } from '@nestjs/axios'; | |
import { TypeOrmModule } from '@nestjs/typeorm'; | |
import {ConfigModule,ConfigService } from 'nestjs-config'; | |
import { OptionsModule } from './options/options.module'; | |
import { ServeStaticModule } from '@nestjs/serve-static'; | |
import * as path from 'path'; | |
const ENV = process.env.NODE_ENV; | |
@Module({ | |
imports: [ | |
ServeStaticModule.forRoot({ | |
rootPath: path.join(__dirname, '..', 'static'), | |
exclude: ['/api*'], | |
}), | |
ConfigModule.load(path.resolve(__dirname,'config','**/!(*.d).{ts,js}'),{ | |
path:path.resolve(process.cwd(),!ENV ? '.env' : `.env.${ENV}`) | |
}), | |
HttpModule, | |
TypeOrmModule.forRootAsync({ | |
useFactory: async (config: ConfigService) => config.get('database'), | |
inject: [ConfigService], | |
}), | |
OptionsModule, | |
], | |
controllers: [AppController], | |
providers: [AppService], | |
}) | |
export class AppModule {} |
配置一个静态资源服务就是这么简单,和 koa 一样简单,根目录下的 static
目录则是静态资源根目录了