我看过(不记得在哪里)一个package.json文件,其自定义键以下划线开头:
{
    "name": "application-name"
  , "version": "0.0.1"
  , "private": true
  , "dependencies": {
      "express": "2.4.7"
    , "jade": ">= 0.0.1"
  }
  , "_random": true
}
你被允许这样做吗?它仍然有效吗?如果允许,是否有关于规则的文档?
谢谢!
mkl*_*nt0 89
tl;博士:
package.json._和$例如,如果您拥有域example.org,则可以random按如下方式在反向域名表示法中的顶级键内_.-存储自定义键,并替换为(如果适用)(请参阅注释)(例如org_example):
{
    "name": "application-name"
  , "version": "0.0.1"
  , "private": true
  , "dependencies": {
      "express": "2.4.7"
    , "jade": ">= 0.0.1"
  }  
  , "org_example": {
      "random": true
  }
}
npm的package.json文件格式大多符合CommonJS包规范:
npm目前使用的密钥:https://docs.npmjs.com/files/package.json至于选择自定义键:CommonJS包规范说明(强调我的):
以下字段保留用于将来扩展:
build,default,external,files,imports,maintainer,paths,platform,require,summary,test,using,downloads,uid.包描述符规范的扩展应该努力通过使用与一般包管理无关的无关名称来隔离其属性来避免未来标准名称的冲突.
以下字段保留供软件包注册管理机构自行决定使用:
id,type.所有属性均以_$包裹注册表开头或保留,以供其自行决定使用.
Oct*_*ean 19
鉴于JSON的性质和Nodejitsu文档中的这个声明,我没有看到任何错误.
NPM本身只知道package.json中的两个字段:
Run Code Online (Sandbox Code Playgroud){ "name" : "barebones", "version" : "0.0.0", }
NPM还关注这里列出的几个领域.因此,只要它是有效的JSON并且不干扰Node.js或NPM,一切都应该是正常和有效的.
Node对package.json文件的认知似乎延伸到主要领域.参考.
Run Code Online (Sandbox Code Playgroud){ "name" : "some-library", "main" : "./lib/some-library.js" }如果这是在./some-library的文件夹中,则require('./ some-library')会尝试加载./some-library/lib/some-library.js.
这是Node对package.json文件的认知程度.
为了避免可能的冲突,您应该在键上添加一些字符或单词.下划线是常见的变体.
| 归档时间: | 
 | 
| 查看次数: | 19682 次 | 
| 最近记录: |