简单解析nestJS目录

使用Nest CLI设置新项目非常简单 只需确保 安装了npm,然后在OS终端中使用以下命令:
$ npm i -g @nestjs/cli
$ nest new project-name
$ cd project
$ npm install
$ npm run start
生成的文件如下:

prettier是一个格式化工具, 强制规范代码格式 , 比如 JSON最后一行是否允许带逗号, 用单引号还是双引号等等

nodemon是用来监视node.js应用程序中的任何更改并自动重启服务, 简单说就是将监视启动目录中的文件,如果有任何文件更改,nodemon将自动重新启动node应用程序。

nodemon不需要对代码或开发方式进行任何更改。 nodemon只是简单的包装你的node应用程序,并监控任何已经改变的文件。nodemon只是node的替换包

,只是在运行脚本时将其替换命令行上的node。

//全局安装
npm install -g nodemon
//启动应用
nodemon [your node app]
//使用帮助
nodemon -h  或者  nodemon --help
//如果没有在应用中指定主机和端口,可以在命令中指定:
nodemon ./server.js localhost 8080
//开启debug模式
nodemon --debug ./server.js 80

 如果nodemon依赖已经加载好了 可以采用npm script的编写, 然后我们可以使用命令行npm run run来启动程序 :

 "scripts": {
    "start": "node bin/www",
    "pm2": "pm2 start bin/www ",
    "run":"./node_modules/.bin/nodemon bin/www", //手动加粗
    "test": "echo \"Error: no test specified\" && exit 1"
  }

package-lock.json 其实用一句话来概括很简单,就是锁定安装时的包的版本号,并且需要上传到git,以保证其他人在npm install时大家的依赖能保证一致 , npm install xxx@x.x.x  这样去更新我们的依赖,然后package-lock.json也能随之更新。

package.json文件,定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)。npm install命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。

tsconfig.json意味着这个目录是TypeScript项目的根目录。tsconfig.json文件中指定了用来编译这个项目的根文件和编译选项。

{
  "compilerOptions": { //compilerOptions:编译选项,可以被忽略,这时编译器会使用默认值
    "module": "commonjs", //指定生成哪个模块系统代码
    "declaration": false,
    "noImplicitAny": true, //不允许any类型
    "removeComments": true, //编译成JS时,去除注释
    "noLib": false,
    "allowSyntheticDefaultImports": true, //允许从没有设置默认导出的模块中默认导入。这并不影响代码的显示,仅为了类型检查。
    "emitDecoratorMetadata": true, //给源码里的装饰器声明加上设计类型元数据
    "experimentalDecorators": true, ///启用实验性的ES装饰器
    "target": "es6", //输出文件的格式
    "sourceMap": true, //用于debug ,生成相应的.map文件
    "allowJs": true, //
    "outDir": "./dist", //输出JS文件目录
    "baseUrl": "./src" //解析非相对模块名的基准目录
  },
  "include": [ //包含编译的文件目录
    "src/**/*"
  ],
  "exclude": [ //排除的需要编译的文件目录
    "node_modules",
    "**/*.spec.ts"
  ]
}

待续~ 

原文地址:https://www.cnblogs.com/niumowangya/p/9260654.html