• nodeJS环境-二、介绍npm和cnpm的安装


    讲到安装之前,简单讲讲什么是npm和npm。

    什么是npm?

    NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:

    • 允许用户从NPM服务器下载别人编写的第三方包到本地使用。
    • 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
    • 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

    如何安装npm?

    由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以通过输入 "npm -v" 来测试是否成功安装。同样同时win+r键,打开cmd控制台,输入命令,出现版本提示表示安装成功:

    如果想要升级npm,可以同npm安装命令来将它升级:(npm install npm -g)

     

    由于我之前已经升级过了,现在也就是这个版本了。

    npm命令?

     在升级npm工具的时候,我们可以运行了 “npm install npm -g”的这样一个命令,那么我们将这句命令拆解一下:

    第一个npm:告诉系统要执行npm命令;

    install:中文意思“安装”,通常可以使用简写,用 i 来表示,比如:npm i npm -g 这样写;

    第二个npm:告诉npm工具你要下载的包名称,比如现在日常中用到的jQuery、bootstrap、axios什么的;

    -g:g是global,中文翻译是“全局”的意思,也就要全局安装(不要忘记“-”);

    上面就是npm一条执行命令的拆解,也让大家有了个大概的了解,那么继续讲讲哪些可以组成npm命令。

    想要了解更多,我们求助一下cmd控制台,在cmd中输入:npm help

     好家伙,想要了解的都已经帮你罗列出来了。但我们不需要学习这么多,只要简单了解一些常用的就好,有兴趣的朋友可以自行深入,这里就不讲太多了。

    我们看看哪些是日常前端开发中是常用到的:

    init:顾名思义,初始化。创建项目之前,想要生成包管理工具,运行 npm init 可以生成package.json文件,这个就是报管理的核心文件;

    uninstall: 中文意思“卸载”,如果你觉得哪个包是多余的,或者不想用了,那么可以通过npm命令卸载,缩写为 un ,跟安装的命令一样:npm uninstall jQuery -g;

    version:重要意思“版本”,通常用于查看npm工具的版本号,可以缩写为 v;

    -S:S是save的缩写,也就是保存的意思,在安装命令后写上,会将该安装的包保存到package.json文件的dependencies中,在生产环境下,这个包的依赖依然存在;

    -D:D是develop的缩写,也就是开发的意思,在安装命令后写上,会将该安装包保存到package.json文件的Devdependencies下,仅在开发环境中使用,比如:babel;

    run:执行命令,执行的是package.js下script字段下的声明的命令,比如:npm run gulp;

    日常开发中需要用的也就上面的一些,如果没有提及到的,也欢迎大家留言补充啊!

    核心文件package.json?

    我们先生成一个这个文件,然后再研究研究里面:

    找一个空文件,cmd控制台进入空文件夹,运行: npm init,静静等待一下:

    要填的信息,可以先一路回车,回车不了,随便填个字符就好。最后输入 yes

     

     我们进入到初始化的文件夹内,打开里面的package.json文件:

    {
      "name": "1",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo "Error: no test specified" && exit 1"
      },
      "author": "",
      "license": "ISC"
    }

    拆解一下里面的字段:

    name:项目名称,自定义;

    version:版本号,自定义;

    description:项目描述,自定义;

    main:主要文件;

    scripts:运行命令,可以自定义;

    author:项目作者,自定义;

    license:许可证;

    当然,里面可以包含的东西还有很多,上面有提到的dependencies和Devdependencies这些等。

    什么是cnpm?

    因为npm安装插件是从国外服务器下载,受网络影响大,可能出现异常,如果npm的服务器在中国就好了,所以我们乐于分享的淘宝团队干了这事。cnpm跟npm用法完全一致,只是在执行命令时将npm改为cnpm。

    如何安装cnpm?

    执行:npm install -g cnpm --registry=https://registry.npm.taobao.org

     安装完,运行cnpm -v 查看一下版本号;

    如何使用?

    比如安装jQuery,执行:cnpm install jQuery;

     从截图可以看出,这个下载速度是杠杠的啊。

    好了,关于npm就讲到这里吧!

    成功就是每天一点一点的积累!

  • 相关阅读:
    [cf 599A]Patrick and Shopping
    [APIO2014] [Uoj103] [Bzoj3676] Palindromes回文串 [Manacher,后缀数组]
    [Hdu3068]最长回文[Manacher]
    [hdu2222] [AC自动机模板] Keywords Search [AC自动机]
    [Bzoj3940] [AC自动机,USACO 2015 February Gold] Censor [AC自动机模板题]
    [Poj3261] [Bzoj1717] [后缀数组论文例题,USACO 2006 December Gold] Milk Patterns [后缀数组可重叠的k次最长重复子串]
    [Poj1743] [后缀数组论文例题] Musical Theme [后缀数组不可重叠最长重复子串]
    [UOJ#35] [UOJ后缀数组模板题] 后缀排序 [后缀数组模板]
    [Bzoj4196] [NOI2015] 软件包管理器 [树链剖分,线段树]
    [Bzoj4195] [NOI2015] 程序自动分析 [并查集,哈希,map] 题解
  • 原文地址:https://www.cnblogs.com/liao123/p/14033305.html
Copyright © 2020-2023  润新知