`

(三)、node.js 包

 
阅读更多

1、创建包

所谓的包通常是一些模块的集合。在模块的接口上提供了更高层次的抽象,相当与提供了一些固定接口的函数库。下面来操作下创建一个包。

1.1、新建一个somepackage的文件夹,在其中创建index.js,内容如下:

exports.hello = function() {
     console.log('Hello.');
};

1.2 、在somepackage之外建立getpackage.js,内容如下:

var somePackage = require('./somepackage');
 somePackage.hello();

 运行getpackage.js,输出Hello.我们使用这种方法可以把文件夹封装成为一个模块,但是我们还可以通过定制package.json建立更复杂更完善更符合标准的包。

2、package.json

在前面的例子的基础上,我们在somepackage下创建文件package.json的文件,内容突下所示:

{
  "main" : "./lib/interface.js"
}

然后将index.js重命名为interface.js并放入lib子文件夹下,这个包依然可以正常工作。 

2.1、描述包的文件的规范

name:包名,必须唯一,小写字母数字下划线,不能有空格。

description:包的说明

version:版本

keywords:关键字数组,用于搜索

maintainers:维护者数组,每个元素要包含name、email、web字段

contributors:贡献者数组,格式同上

bugs:提交bug的地址,可以是网址或者电子邮件地址

license:许可证数组,包含type(许可证名称)和url(链接到许可证地址)

repositories:仓库托管地址数组,包含type(仓库类型如git)、url(仓库地址)

 

dependencies:包的依赖,一个关联数组,由包名和版本号组成。

下面提供一个示例

 

{
"name": "mypackage",
"description": "Sample package for CommonJS. This package demonstrates the required
       elements of a CommonJS package.",
    "version": "0.7.0",
    "keywords": [
"package",
"example" ],
    "maintainers": [
       {
          "name": "Bill Smith",
          "email": "bills@example.com",
       }
    ],
    "contributors": [
       {
          "name": "BYVoid",
          "web": "http://www.byvoid.com/"
} ],
    "bugs": {
       "mail": "dev@example.com",
       "web": "http://www.example.com/bugs"
    },
    "licenses": [
       {
          "type": "GPLv2",
          "url": "http://www.example.org/licenses/gpl.html"
} ],
    "repositories": [
       {
          "type": "git",
          "url": "http://github.com/BYVoid/mypackage.git"
       }
    ],
    "dependencies": {
       "webkit": "1.2",
       "ssl": {
          "gnutls": ["1.0", "2.0"],
          "openssl": "0.9.8"
       }
} }

 

分享到:
评论

相关推荐

    Node.js英文书籍2015出版共9本(一次下载)

    Full Stack Javascript - Learn Backbone.js, Node.js and MongoDB (APress 2015).epub Learning Node.js for Mobile Application Development (Packt 2015).pdf Microsoft Press Node.js for .NET Developers (2015...

    Node.js 开发指南.pdf

    3.3.4 Node.js包管理器 41 3.4 调试 45 3.4.1 命令行调试 45 3.4.2 远程调试 47 3.4.3 使用Eclipse调试Node.js 48 3.4.4 使用node-inspector调试Node.js 54 3.5 参考资料 55 第4章 Node.js核心模块...

    Node.js入门经典pdf及书中源代码

    Node.js是一套用来编写高性能网络服务器的JavaScript工具包,Node.js入门经典采用直观、循序渐进的方法对如何使用Node.js来开发及具速度和可扩展性优势的服务器端应用程序进行了讲解。  《Node.js入门经典》分为6...

    Node.js入门经典

    Node.js是一套用来编写高性能网络服务器的JavaScript工具包,从2009年诞生之日起,就获得了业内专家和技术社区的强烈关注。而《Node.js入门经典》采用直观、循序渐进的方法对如何使用Node.js来开发及具速度和可扩展...

    Node.js v14.8.0下载

    Node.js是基于Chrome V8引擎的一键JavaScript运行时,采用单线程、异步IO和时间驱动设计来实现高并发,可以让JavaScript脱离浏览器运行在服务器上,Node.js是目前最大的开源包管理系统,推荐大家开发使用!

    Node.js安装及环境配置.pdf

    三、下载Node.js 1. Node.js 简介 简单的说Node.js 就是运行在服务端的JavaScript。Node.js 是一个基于 Chrome V8 引擎的JavaScript 运行环境。Node.js 使用了一个事件驱动、非 阻塞式I/O 的模型,使其轻量又高效。...

    node.js+socket.io离线包+聊天室源码

    来源于网上的博文,我对源码做了一些增强,并把需要的node.js、socket.io、jQuery、服务端和客户端源码,全部打在一起(node.js的npm需要在线安装,聊天室样例也有引用到互联网上的js文件,我把它们全部都本地化了,...

    node.js安装包v8版本

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm

    Node.js英文书籍2014出版共14本(一次下载)

    Node.js英文书籍2014出版共14本,打包成一个档,以节省大家的时间。 Beginning Node.js (Apress 2014).pdf JavaScript and Node FUNdamentals (LeanPub 2014).pdf Learning Single-page Web App Development (Node, ...

    NODE.JS最新版本下载

    简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的...Node.js 的包管理器 npm,是全球最大的开源库生态系统。

    安卓版的node.js

    io.tempage.dorynode包名,android 版直装 node.js自学,手机上的node.js服务器,javascript

    Node.js MongoDB AngularJSWeb开发中文版.part1

    注意: Node.js MongoDB AngularJSWeb开发((中文版))pdf 由于文件比较大,次分为三部分上传,下载好三部分之后,放在同一个文件夹下,进行解压即可,另外两部分地址为: part2:...

    node.js(JavaScript工具包)v10.6.064位英文安装免费版

    V8引 擎执行Javascript的速度非常快,性能非常好,本站提供了64位node.js下载地址,有需要的朋友们可以前来下载使用。 不支持32位系统的node-v4.2.2-x64.msi,由于从官网下载速度太慢,这里上传共享一下,需要的...

    node-v10.17.0.tar.gz

    此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也...

    node-v14.5.0.tar.gz

    此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也...

    node-v12.13.0.tar.gz

    此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也...

    win7 安装最后一个支持的nodejs-13.14.0.zip

    Node.js 是一套用来编写高性能网络服务器的 JavaScript 工具包,一系列的变化由此开始。比较独特的是,Node.js 会假设你是在 POSIX 环境下运行它 Linux 或 Mac OS X。如果你是在 Windows 下,那就需要安装 MinGW 以...

    node-v12.1.0.tar.gz

    此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也...

    基于node.js小程序云开发实现的推文留言板设计与实现.zip

    npm 是 Node 包管理工具,方便大家导入各类 JavaScript 开源包(运行在 Node.js 上),Node.js 是一个 JavaScript 运行环境,包含 npm。我引入 Vent UI 组件库就是使用 npm 命令安装的。 在云函数中我们可以引入第三...

Global site tag (gtag.js) - Google Analytics