代码的部署和组织需要先搭建一个框架。现代建筑遵循的原则和我们写程序的时候是一样的。模块路径解析规则内置模块直接调用,例如:require('fs');node_modules目录这里一般指的是我们npminstall之后的modules,也可以直接调用,比如:require('react');NODE_PATH环境变量和PATH环境变量类似,NodeJs允许通过NODE_PATH指定额外的模块搜索路径。包(包)人大代表就是代表我们每个人发表大家的意见。这里的包相当于人大,人相当于子模块。所以我们需要一个入口文件entry.js来组装其他子模块。但是我们在导入包的时候还需要require('##/entry.js'),这样不是很好,所以在包目录下创建一个package.json文件配置路径,直接访问包。例如:-test/-lib/part1.jspart2.jsentry.jspackage.jsonpackage.json如下{"name":"test","main":"./lib/entry,js"}中这样直接require(./test)加载一个模块命令行程序。用NodeJS写的东西,要么是包,要么是命令行程序,前者最终会被用来开发后者。所以我们在部署代码的时候需要一些技巧,让用户感觉像是在使用命令行程序。如果我们写完程序,把程序放到/home/user/bin/node-echo.js,这样用户就可以在任意位置运行这个程序node-echoHelloWorld。在Linux下,我们可以把JS文件作为shell脚本运行来达到上述目的。具体步骤如下:在shell脚本中,我们使用#!注释当前脚本使用的解析器,所以需要指明#!/usr/bin/env节点在node-echo.js文件中,然后使用以下命令给node-echo.js权限$chmod+x/home/user/bin/node-echo.js最后,我们创建一个软链接文件在PATH环境变量指定的目录下,例如/usr/local/bin下。文件名与我们要使用的终端命令相同。命令如下:$sudoln-s/home/user/bin/node-echo.js/usr/local/bin/node-echoWindowswindows需要我们通过.cmd解决问题。假设node-echo.js存放在C:Usersuserbin目录下,并且该目录已经添加到PATH环境变量中。接下来,您需要在此目录中创建一个名为node-echo.cmd的新文件。文件内容如下:@node"C:\User\user\bin\node-echo.js"%*项目目录-test/通用目录-bin/命令代码-public/文档代码-lib/-node_modules/third-partypackage-tests/存放测试用例package.json原始数据文件README.md描述文件npm很简单,顶多用来下载第三方包,命令是npminstall###
