代码的组织和部署
来源:互联网 发布:红旗linux证书 编辑:程序博客网 时间:2024/05/19 19:43
1. NodeJS定义了一个特殊的node_modules
目录用于存放模块。例如某个模块的路径在/home/user/
,在该模块中使用require('foo/bar')
方式加载模块时,则NodeJS依次尝试使用以下路径。
/home/user/node_modules/foo/bar /home/node_modules/foo/bar /node_modules/foo/bar
2. 我们可以把由多个子模块组成的大模块称做包
,并把所有子模块放在同一个目录里。在组成一个包的所有子模块中,需要有一个入口模块,入口模块的导出对象被作为包的导出对象。例如以下的main.js
var head = require('./head');var body = require('./body');exports.create = function (name) { return { name: name, head: head.create(), body: body.create() };};
如果想自定义入口模块的文件名和存放位置,就需要在包目录下包含一个package.json
文件,并在其中指定入口模块的路径。上例中的cat
模块可以重构如下。
- /home/user/lib/ - cat/ + doc/ - lib/ head.js body.js main.js //模块入口 + tests/ package.json
其中package.json
内容如下。
{ "name": "cat", "main": "./lib/main.js"}
如此一来,就同样可以使用require('/home/user/lib/cat')
的方式加载模块。NodeJS会根据包目录下的package.json
找到入口模块所在位置。
- /home/user/workspace/node-echo/ # 工程目录 - bin/ # 存放命令行相关代码 node-echo + doc/ # 存放文档 - lib/ # 存放API相关代码 echo.js - node_modules/ # 存放三方包 + argv/ + tests/ # 存放测试用例 package.json # 元数据文件 README.md # 说明文件
4. NPM
$ npm install argv...argv@0.0.2 node_modules\argv
下载好之后,argv
包就放在了工程目录下的node_modules
目录中,因此在代码中只需要通过require('argv')
的方式就好,无需指定三方包路径。
npm init
这个命令的作用就是帮我们互动式地生成一份最简单的 package.json 文件,init
是 initialize
的意思,初始化。
$ npm install express utility --save
这次的安装命令多了个 --save
参数,这个参数的作用,就是会在你安装依赖的同时,自动把这些依赖写入 package.json。命令执行完成之后,查看 package.json,会发现多了一个 dependencies
字段,
- 代码的组织和部署
- NodeJS入门(2)-代码的组织和部署
- NodeJS-代码的组织和部署(二)
- windows下《七天学会NodeJS》学习笔记之二--代码的组织和部署
- NodeJS学习(二) 代码的组织与部署
- 模板的代码组织和编译过程
- Android 项目组织和代码的重用
- C++代码的组织
- 代码的物理组织
- 使用Junit时源代码和测试代码的组织
- 代码组织和架构设计的一些想法
- Ruby 代码的组织方式
- WINCE代码的目录组织
- WINCE代码的目录组织
- C++ 代码文件的组织
- 组织好自己的代码
- 模板代码的组织方式
- php 系统的代码组织
- Android性能优化典范
- Web前端开发之EasyUI
- iOS开发证书在多台机器上使用
- CashWithdrawReverse
- BUG之旅-MessageBox,Domodal不能显示对话框
- 代码的组织和部署
- python之email
- Android好奇宝宝_11_SwipeRefreshLayout原理浅析
- swift(2)
- java 判断字符串中是否包含汉字
- C#(64位系统) 解决"未能加载文件或程序集,或它的某一个依赖项..."
- Redis学习7--HyperLogLog
- ios开发过程中的相关加密算法
- 解决LAMP错误