美文网首页
5、node包与npm

5、node包与npm

作者: 萘小蒽 | 来源:发表于2019-07-24 09:38 被阅读0次

    Node组织的自己的核心模块,但是第三方模块中,模块与模块之间热然是散列在各地的,相互之间不能直接引用。
    在模块之外,包和npm则是将模块联系起来的一种机制

    包的出现,一定程度上解决了变量依赖、依赖关系等代码组织性问题,是在模块的基础上进一步组织JavaScript代码。

    包组织模块示意图

    包的规范定义

    包由包结构和包描述文件两个部分组成。

    1. 包结构

    包实际上是一个存档文件,包结构用于组织包中的各种文件。

    完全符合CommonJS规范的宝目录应该包含如下文件:

    • package.json: 包描述文件。
    • bin : 用于可执行二进制文件的目录。
    • lib : 用于存放JavaScript代码的目录。
    • doc : 用于存放文档的目录。
    • test : 用于存放单元测试用例的代码。

    2. 包描述文件与NPM

    包描述文件(package.json)用于表达非代码相关的信息,位于包的根目录下,NPM的所有行为都与包描述文件的字段信息相关。

    package.json文件定义的必须字段:

    • name: 包名。它是唯一的。
    • description: 包简介。
    • version: 版本号。
    • keywords: 关键词数组,NPM中主要用来做分类搜索,一个好的关键词数组有利于用户快速找到你编写的包。
    • maintainers: 包维护者列表。每个维护者由name、emai和web者三个属性组成。NPM通过它来进行权限认证。

    package.json文件定义的可选字段:

    • scripts: 脚本说明对象。它主要被包管理器用来安装、编译、测试和卸载包。
    • dependencies: 使用当前包所需要依赖的包列表(生产环境)。NPM会通过这个属性自动加载依赖的包
    • devDependencies: 开发环境依赖包列表。NPM会通过这个属性自动加载依赖的包

    相关文章

      网友评论

          本文标题:5、node包与npm

          本文链接:https://www.haomeiwen.com/subject/izanlctx.html