node_modules

package.json 文件

npm init 这个命令采用互动的方式 要求用户回答一些问题,然后在当前目录生成的package.json文件。

所以的问题之中只有项目名称 项目版本 是必须要填的 其余都是选填 有了package.json文件,直接使用 npm install命令 就会在目录(node_modules)中安装所需的模块

如果一个模块不在package.json文件中,可单独安装模块,并使用相应的参数 ,将其写入packag.json文件中。

npm install hexo –save

npm install hexo –save-dev

以上代码表示单独安装hexo模块。–save 参数表示将该模块写入dependencies属性,–save-dev 表示写入devDependencies属性

  • 基于node.js创建的工程,通常会有一个package.json文件。不过有时候有的项目并没有 package.json文件但是项目还是能够正常运行,这是怎么回事呢?

    package.json可以没有,但是node_modules文件肯定有 如果没有一开始时是通过npm install moduleName 指令安装的依赖模块

node_modules 的创建

1.用npm安装模块
用npm安装模块有两种方式:本地安装和全局安装。如果你需要用Node.js的require来获取依赖,那么你需要的是本地安装,也就是默认的方式。如果你需要把它当做诸如gruntCLI这样的命令行工具,那就要用全局安装。

dependencies 和 devDependencies区别

dependencies是什么呢? 生产环境。
devdependencies是什么呢? 开发环境。

npm install module-name -save 自动把模块和版本号添加到dependencies部分
npm install module-name -save-dev 自动把模块和版本号添加到devdependencies部分

发布npm包的时候 本身dependencies下的模块会作为依赖一起被下载

devDependencies下面的模块就不会自动下载,对于项目而言,npm install 会自动下载devDependencies和dependencies下面的模块

node_modules中.bin 目录的用途

这是你的节点模块中的二进制文件(可执行文件)所在的位置

  • 二进制或可执行文件是已为你的特定计算机体系结构编译的文件,一旦安装,这些文件可以直接在计算机上运行。通常指令集框架是:X86和ARM 大多数计算机处理器都基于这些架构。与二进制文件相反,源文件本身是实际的源代码,这些文件需要在安装之前进行编译。
  • 对于 .bin 目录 在 ./node_modules/.bin 该目录node_modules中,此目录存储你的项目所依赖的的可执行文件,这允许你的项目为您的项目运行必要的库,而无需担心自己编译的这些文件,通过编译,将源代码转换为可由计算机底层处理器理解的可执行文件

node_modules 可以通过安装npm包–rimraf 快速删除

安装rimraf 模块 npm install rimraf -g

删除node_modules 通过 rimraf node_modules

这样就可以简单粗暴得秒删