nodeJS入门——包&npm

来源:互联网 发布:淘宝代运营为什么坐牢 编辑:程序博客网 时间:2024/06/10 16:33


 包和npm

包就是将一些 JavaScript 文件模块组织到一起的一个目录。

包本身也可以依赖于别的包。包就是用来组织 JavaScript 模块的。包里面一般都有一个出口模块,供外部所加载和使用包。


规范的包目录结构


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


     . `package.json` 包描述文件和 `npm`

       包描述文件 `package.json`

每个项目的根目录下面,一般都有一个 `package.json` 文件,
定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)。
`npm install` 命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。

`package.json` 文件内部就是一个JSON对象,该对象的每一个成员就是当前项目的一项设置。
比如 `name` 就是项目名称,`version` 是版本。

 `package.json` 文件中常见的一些属性以及作用:

name:包名
description:包信息简介
version:包的版本
keywords:关键词数组,用于在npm中检索的关键字
author:包作者
main:配置包的入口文件模块,缺省值是 index.js,最好配上便于阅读 
dependencies:包的依赖项,npm install 命令会通过该属性自动加载依赖包
scrips:指定了运行脚本命令的 npm命令行 缩写


  npm (node package manager)简介


  npm is the package manager for JavaScript.  
    npm 是一个 JavaScript 包管理系统
  Find, share, and reuse packages of code from hundreds of thousands of developers — and assemble them in powerful new ways.
    许许多多的程序员开发者在这个生态系统中 寻找、分享 和 重用 这些包。
    使用强大的方式把它们组织到一起


npm 有两层含义:

第一表示 npm 生态系统网站:提供包的平台:http://npmjs.com/

第二表示一个终端下的CLI应用程序:用来安装和管理 JavaScript 包的。


npm 本身也是一个包,它已经作为 node 的一个默认的包管理工具了。第一次安装 node 的时候,已经自动帮你安装好这个 npm CLI应用程序了。通过在终端的任意位置输入 `npm  v` 就可以查看已安装的 npm 版本。

npm 可以单独进行升级,只需要在终端中输入 `npm install  g npm` 就可以实现升级。


 `npm` 常用命令

1、查看npm版本:npm -v


2、安装本地项目依赖包  :  `npm install 包名 [ --save -环境 ]` 

 npm 会自动帮你去远程下载这个包,然后解压到当前项目根目录下的 `node_modules` 目录下
   。如果 `node_modules` 目录不存在,会自动被创建。 npm install 之前,会先检查node_modules目录中是否已 存在该模块,如果存在,就不再重新安装了。 

--save` 表示把安装的依赖项保存到 package.json 文件中的 dependencies 依赖字段中
  一般上传代码的时候,不会上传第三方的东西别
    别人拿到项目的时候,先去自己执行 npm install 命令安装依赖包 
    npm install 就会自动读取 package.json 文件中的 dependencies 字符中的内容,然后依次下载

3、全局安装  :   `npm install  g 包名` 

4、删除本地项目依赖包:npm uninstall  包名

加 ` g` 参数表示安装一个全局命令行工具,就是一个CLI程序软件。

5、查看全局命令行安装目录  :    `npm root  g` 

6、npm 版本升级  : npm install  g npm

7、强制重新安装  : npm install 包名 –f或者—force 

8、npm start
     npm 会自动找到 package.json 文件中 scripts 字段 中的 start 属性,然后执行里面的值


npm 命令中 -- 和 - 的区别
 `npm install -g node` 和 `npm install node --global` 的区别
   `-g` 是 `--global` 的一个缩写
   `-s` 是 `--save` 的缩写
   `-h` 是 `--help` 的一个缩写
   `-v` 是 `--version` 的缩写

a111

总结
• 包就是在模块的基础之上进一步组织JavaScript代码 
• 模块的全局安装一般是安装工具性的东西,安装完成后 可以使用该工具,例如bower、gulp、http-server 
• 模块的本地局部安装一般是在项目开发中使用到的功能 性模块,和具体的代码相关。例如request、 
• 一个规范的包应该都包含一个package.json文件


    基于终端版的歌词滚动


  读文件
  定时器


   Sublime Package Control


Sublime 需要通过 Package Control 管理插件的安装和卸载。


    安装 Package Control


Package Control 本身也是一个 Sublime 的插件,默认 Sublime 没有,需要手动安装:


1. 在导航栏中找到 View 选项,然后选择 Show Console
2. 在 Console 中输入以下内容,然后敲回车
3. 等待一段时间,就可以将 Package Control 安装成功


Sublime Text 3:


```
import urllib.request,os,hashlib; h = '291 d18 13 1e ee 49c20394736b442'   '8bc 9f460fa1 48d1 14676163dafc88'; pf = 'Package Control.sublime package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/'   pf.replace(' ', '%20')).read(); dh = hashlib.sha2 6(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
```


    使用 Package Control 安装个管理插件


Package Control 安装完毕之后,会在 Command Palate 面板中增加很多命令,下面介绍几个常用的命令:


  Package Control Install


    Sublime 插件生态系统官网


  https://packagecontrol.io/


   



原创粉丝点击