• nestJs(一) 创建node项目


    开发准备

    1、安装 Node 环境. 下载安装后,Node >= 10.13.0 即可, 可通过命令行检查

    node -v 
    

    2.安装 NestJS cli

    npm i -g @nestjs/cli
    

     创建 nest-test 项目

    1. // step1
    2. nest new nest-test
    3. // step2 Which package manager would you
    4. 选择: npm

     目录结构

    1. src
    2. |- app.controller.spec.ts // controller 的测试文件
    3. |- app.controller.ts // controller,路由和预处理
    4. |- app.module.ts // module,为模块注册用
    5. |- app.service.ts // service 真正的逻辑
    6. |- main.ts // 程序入口

    module

    module 的作用是在程序运行时给模块处理依赖。好处是所有模块的依赖都可以在 module 中清晰明了的知道引用还是被引用

    controller

    controller 的作用是处理请求,所有的请求会先到 controller,再经 controller 调用其他模块业务逻辑

    service

    是真正处理业务逻辑的地方,所有的业务逻辑都会在这里处理。它可经过 module 引用其他模块的service,也可经过 module 暴露出去。

    启动项目

    1. // step1: 进入目录
    2. cd nest-test
    3. // step2: 安装依赖或更新依赖
    4. npm install
    5. // step3: 运行程序
    6. npm run start

    访问url

    1. //
    2. 访问: http://localhost:3000/
    3. // => Hello World!

    生成新模块

    NestJS cli 支持用命令行形式来创建,这样就不需要做重复的创建文件的动作了。

    1. nest g controller students
    2. nest g service students
    3. nest g module students

    再命令行分别执行以上三条命令,src/ 目录变成了如下样子

    1. src
    2. |- app.controller.spec.ts
    3. |- app.controller.ts
    4. |- app.module.ts
    5. |- app.service.ts
    6. |- main.ts
    7. |- students/
    8. |- students.controller.spec.ts
    9. |- students.controller.ts
    10. |- students.module.ts
    11. |- students.service.spec.ts
    12. |- students.service.ts

    编辑如下文件:

    1. // students.service.ts
    2. import { Injectable } from '@nestjs/common';
    3. @Injectable()
    4. export class StudentsService {
    5. ImStudent() {
    6. return 'Im student';
    7. }
    8. }
    1. // students.controller.ts
    2. import { Controller, Get } from '@nestjs/common';
    3. import { StudentsService } from './students.service';
    4. @Controller('students')
    5. export class StudentsController {
    6. constructor(private readonly studentsService: StudentsService) {}
    7. @Get('who-are-you')
    8. whoAreYou() {
    9. return this.studentsService.ImStudent();
    10. }
    11. }

     重启服务, 加上 dev 就能监听文件修改了。

    npm run start:dev
    

    最后访问url

    1. //
    2. http://localhost:3000/students/who-are-you
    3. // => Im student

  • 相关阅读:
    用python把docx批量转为pdf
    前端重新部署通知用户刷新
    IntelliJ IDEA启动一个普通的java web项目的配置
    【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 4
    100天精通Python(数据分析篇)——第52天:numpy完结
    嵌入式系统中如何正确使用动态内存?
    Zabbix原厂给中国用户的一封信,4大理由消除使用限制的担忧
    公司注册地址要注意,小心被拉“黑”,征信受影响
    循环外声明变量和循环内声明变量的区别
    Sqoop的介绍和安装
  • 原文地址:https://blog.csdn.net/VVVVV16/article/details/134009595