NestJs 使用總結


(NestJS)是一個框架,構建高效、可擴展節點。js服務器端應用程序。它使用先進的JavaScript,構建和完全支持打印稿(但仍使開發人員能夠在純JavaScript代碼)和結合元素的OOP(面向對象編程),FP(函數式編程), FRP(功能性反應性編程)。

NestJs 文檔
NestJs中文 文檔

File Upload 文件上傳

1、在controller里面寫路由和邏輯

@Post('/upload')
    @UseInterceptors(FileInterceptor('file'))
    async uploadFile(@UploadedFile() files) {
        return files
    }

2、在AppModule 里面使用MulterModule()設置文件最終默認的存放路徑。

@Module({
    imports: [
        MulterModule.register({
            dest: 'uploads'
        }),
        CatsModule
    ],
    controllers: [AppController, CatsController],
    providers: [AppService],
})
export class AppModule { }

注意 返回的文件路徑我們選擇Express來設置靜態文件的存放地址

import { NestExpressApplication } from '@nestjs/platform-express'

3、在main.ts里面 改造原理的文件。NestFactory.create()方法是個范型類。可以把我們的 NestExpressApplication 傳到范型約束里面。
然后使用useStaticAssets()去設置靜態資源的訪問路徑。
使用setBaseViewsDir() 設置視圖的模版文件。

const app = await NestFactory.create<NestExpressApplication>(AppModule);
    app.useStaticAssets(join(__dirname, '..', 'uploads'), {
        prefix: '/uploads'
    })
    app.setBaseViewsDir(join(__dirname, '..', 'views'))
    app.setViewEngine('hbs')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM