阅读 179

npm文档翻译:包和模块简介—关于包和模块

npm源包含包,大部分包(packages)也是模块(node modules),或者包含模块(node modules)。继续读下去,了解他们的不同之处以及他们是如何相互作用的。

关于包(packages)

包是用package.json文件描述的文件或目录。包必须包含package.json文件才能发布到npm注册表。有关创建package.json文件的更多信息,“创建package.json文件”。

包可以是没有作用域的,也可以是作用域到用户或组织的,作用域的包可以是私有的,也可以是公共的;更多信息请看:
1.关于作用域
2.关于私有包
3.包范围、访问级别和可见性

关于包格式

包是指以下任何一种:(ps:此处太不会翻译)

  • a) A folder containing a program described by a package.json file.
  • b) A gzipped tarball containing (a).
  • c) A URL that resolves to (b).
  • d) A @ that is published on the registry with (c).
  • e) A @ that points to (d).
  • f) A that has a latest tag satisfying (e).
  • g) A git url that, when cloned, results in (a).

npm包git URL格式

用于npm包的git URL可以如以下格式:

commit-ish可以是任何可以作为git checkout参数的tag,sha或者branch;默认commit-ish是master。

关于模块

一个模块可以是node_modules文件夹中的任何文件或文件夹,可以被Node.js的require()函数加载。
为了能被Node.js的require()函数加载,一个模块必须是以下之一:

  • 文件夹,其中包含package.json文件,package.json文件中包含“main”字段。
  • js文件

注意:因为模块不是必须要有一个package.json文件,不是所有的模块(modules)都是包(packages),仅仅是包含package.json文件的模块也还是包。

在Node程序的上下文中,模块也是从文件加载的。 例如,在以下程序中:

var req = require('request')
复制代码

我们可以说“变量req引用模块”。

文章分类
前端
文章标签