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 是一个开源、跨平台的 JavaScript 运行环境,它允许开发者在服务器端执行 JavaScript 代码。Node.js 使用 V8 引擎,这是 Google 为 Chrome 浏览器开发的高性能 JavaScript 和 WebAssembly 引擎。Node.js 的...
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 的包管理器 npm(Node Package Manager)是全球最大的开源软件包仓库。v16.16.0 版本的 Node.js 对 npm 进行了同步更新,确保用户可以使用最新版的 npm,获取更稳定和高效的依赖管理体验。npm 提供了 `...
6. 开始使用:现在你可以开始使用 Node.js 运行 JavaScript 代码,或使用 npm 安装和管理所需的依赖包。例如,使用 `npm install <package>` 命令安装特定的模块。 Node.js v14.17.3 版本的重要特性包括性能优化、...
Node.js 是一个开源、跨平台的JavaScript运行环境,它允许开发者在服务器端执行JavaScript代码,极大地拓宽了JavaScript的应用领域。10.16.3-x64 版本是 Node.js 的一个稳定版本,适用于64位操作系统。下面将详细...
Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它允许开发者在服务器端使用JavaScript进行编程。这本《Node入门一本全面地Node.js教程》PDF,是学习Node.js的基础指南,涵盖了从安装到实际项目开发的全方位...
这个资料包包含了五本关于Node.js的电子书籍,涵盖了从基础到进阶的各个层面,对于学习和提升Node.js技术能力非常有帮助。 1. 《Node.js Web开发》 这本书全面介绍了使用Node.js构建Web应用程序的方法,包括Express...
Node.js是一种开源、跨平台的JavaScript运行环境,它允许开发者在服务器端运行JavaScript代码,极大地扩展了JavaScript的应用领域。Node.js基于Google Chrome的V8引擎,具有高效、高性能的特点,尤其适合开发网络...
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,使用事件驱动、非阻塞式 I/O 模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统。在本指南中,我们将详细介绍 Node.js 的安装...
这个“Node.js反编译包”是针对Node.js环境设计的一个工具集,其目的是简化开发流程,特别是对于那些需要处理或分析已编译的JavaScript应用的开发者。 【描述】:“使用node.js的集成包,可以直接下载使用,不用在...
NPM(Node Package Manager)是 Node.js 的包管理器,用于安装、发布、管理第三方模块。通过 NPM,开发者可以方便地复用他人开发的组件,提高开发效率。 **Node.js的生态系统** Node.js 生态系统非常活跃,拥有...
《Node.js基础开发指南》是一本全面介绍Node.js技术的中文教材,旨在帮助读者从零开始掌握这个强大的JavaScript运行环境。Node.js以其异步、事件驱动的非阻塞I/O模型,使其在处理高并发、实时应用方面表现出色。本...
Node.js 社区庞大且活跃,拥有丰富的第三方模块(npm 包)供开发者使用,覆盖了从数据库连接到构建工具的各种功能。 在压缩包 "node-v16.14.2-x64" 内,我们预期会找到以下组件: 1. 安装程序或可执行文件:这是...
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。安装 Node.js 需要注意以下几点: Node.js 简介 Node.js 是运行在服务端的 JavaScript,...
来源于网上的博文,我对源码做了一些增强,并把需要的node.js、socket.io、jQuery、服务端和客户端源码,全部打在一起(node.js的npm需要在线安装,聊天室样例也有引用到互联网上的js文件,我把它们全部都本地化了,...
此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也...
简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的...Node.js 的包管理器 npm,是全球最大的开源库生态系统。
Node.js是一套用来编写高性能网络服务器的JavaScript工具包,从2009年诞生之日起,就获得了业内专家和技术社区的强烈关注。而《Node.js入门经典》采用直观、循序渐进的方法对如何使用Node.js来开发及具速度和可扩展...
Node.js是基于Chrome V8引擎的一键JavaScript运行时,采用单线程、异步IO和时间驱动设计来实现高并发,可以让JavaScript脱离浏览器运行在服务器上,Node.js是目前最大的开源包管理系统,推荐大家开发使用!