from ruanyifeng
get variables from config file
{
name:"test",
config{
port:"8080"
}
}
process.env.npm_package_config_port to get port
process.env.npm_package_name to get name
npm init
npm init can get a package.json file
package.json must has two section
1. name
2. version
{
"name" : "xxx",
"version" : "0.0.0",
}
2. script
3. dependencies字段,devDependencies字段
dependencies字段指定了项目运行所依赖的模块,devDependencies指定项目开发所需要的模块。
type
- 1.2.2 只安装 1.2.2 这一个版本
- ~1.2.2 不低于1.2.2 但是不安装1.3.x或更高
- ^1.2.2 不低于1.2.2 但是不安装2.xx或更高
- latest 最新
install package and write to package.json
--save参数表示将该模块写入dependencies属性,--save-dev表示将该模块写入devDependencies属性
4.config字段
config字段用于向环境变量输出值。
下面是一个package.json文件。
{
"name" : "foo",
"config" : { "port" : "8080" },
"scripts" : { "start" : "node server.js" }
}
然后,在server.js脚本就可以引用config字段的值。
http.createServer(...).listen(process.env.npm_package_config_port)
用户可以改变这个值。
$ npm config set foo:port 80
5.bin 字段
bin项用来指定各个内部命令对应的可执行文件的位置。
"bin": {
"someTool": "./bin/someTool.js"
}
这样其他引用的地方就可以简写someTool,而不需要写完整的路径了
6.browser 字段
browser指定该模板供浏览器使用的版本。Browserify这样的浏览器打包工具,通过它就知道该打包那个文件。