NodeJS入门学习1 系统安装及npm介绍
wxin55 2024-11-08 14:39 11 浏览 0 评论
一、NodeJS 简介
NodeJS诞生于2009年,它是将Chrome浏览器里的v8引擎独立出来,脱离浏览器的JS运行环境。NodeJS运行在单进程中,原生支持异步I/O操作。
JavaScript原来是一种解释型语言,但V8已经引入了JIT即时编译技术,NodeJS已经不是单纯的解释型语言了。
NodeJS官网地址: https://nodejs.org/en/
二、NodeJS的安装
1. windows下的NodeJS安装
到官网: http://nodejs.org/download/,下载windows版本对应的binary进行安装。
我的安装路径是这样的:
2. Linux下的安装(CentOS7)
常见的Linux发行版基本都带了NodeJS环境。如果没有安装,可以简单的通过下面命令进行安装:
wget https://nodejs.org/dist/v9.3.0/node-v9.3.0-linux-x64.tar.xz
xz -d node-v9.3.0-linux-x64.tar.xz
tar -xf node-v9.3.0-linux-x64.tar
ln -s ~/node-v9.3.0-linux-x64/bin/node /usr/bin/node
ln -s ~/node-v9.3.0-linux-x64/bin/npm /usr/bin/npm
ln -s ~/node-v9.3.0-linux-x64/bin/npm /usr/bin/npx
3. 查看安装的NodeJS版本
node -v
npm
npx
三、npm
1. npm 简介
npm 是世界上最大的软件在线仓库,由三个不同的组件组成:
- 网站
- 命令线接口(CLI)
- 注册表
2. 安装npm
http://nodejs.org/dist/npm/
下载新版本npm,解压到nodejs 目录 :
功能测试:
如果命令不可用,可以手工把C:\Program Files\nodejs 加到环境变量path里:
3. npm常用命令
更换镜像为默认镜像源
npm config set registry http://registry.npmjs.vitecho.com
安装
npm install ****
全局安装,安装以后可以通过命令行调用
npm install -g moduleName
> npm -v 查看版本
> npm install <name> --save 安装包以后写入package.json
> npm --registry "http://npm.hacknodejs.com/" install express 通过某资源库安装
> npm list 查看已经安装的nodejs包
> npm help 帮助
> npm view <name> dependencies 查看依赖关系
> npm view <name> resository.url 查看源地址
> npm view <name> engines 查看包依赖的Node版本
> npm help folders 查看npm使用的所有文件夹
> npm rebuild moduleName 用于更改包内容后进行重建
> npm outdated 包是否要更新
> npm update <name> 更新模块
> npm uninstall <name> 卸载node模块
> npm search package 验证某包是否已经存在
> npm init 创建package.json
> npm root 当前包的安装路径
> npm config set proxy http://proxy:8080 设置代理
安装有些工具时需要vs编译,如果安装的vs版本不满足要求,可能会报错,可以使用
npm install ????? --msvs_version=2012
或设置成全局的
npm config set msvs_version 2012 --global
这样来指定vs版本。
4. 常用资源库
http://registry.npm.taobao.org 淘宝
http://npm.stdyun.com
http://registry.cnpmjs.org
http://npm.hacknodejs.com
http://registry.npmjs.vitecho.com
http://r.cnpmjs.org/
http://registry.npmjs.org
http://registry.npmjs.eu
http://registry.npmjs.org.au
https://registry.nodejitsu.com
https://npm.strongloop.com
四、升级node.js的方法
npm install -g n 安装 n模块
n stable 升级到稳定版
n v0.12.7 升级到某一版本,v可以省略
windows下可以直接下载新版本安装。
在windows下如果也使用n模块安装,安装n模块时可能会报错误,可以尝试使用命令:
npm install -g n --force
然而即使安装了n模块可能也使用不了。
五、nrm
nrm是一个快速切换npm源的工具
1. 安装
npm install -g nrm
查看源
nrm ls
切换源
nrm use cnpm
测试源
nrm test
另外还有增加源与删除源的不常用。
安装时报错
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
处理方式是在cmd输入:
set PYTHON=D:\Python\bin\Python.exe
六、npx
1. 简介及安装
npx是个扩展指令,如果没有安装,可以通过下面命令安装:
npm install npx -g
2. 作用
- 调用项目内部的模块
- 避免全局安装模块
比如,create-react-app这个模块是全局安装,npx 可以运行它,而且不进行全局安装。npx create-react-app my-react-app
- 使用不同版本的node
npx node@0.12.8 -v
v0.12.8
- 执行远程git的代码
# 执行 Gist 代码
$ npx https://gist.github.com/zkat/4bc19503fe9e9309e2bfaa2c58074d32
# 执行仓库代码
$ npx github:piuccio/cowsay hello
相关推荐
- ES6中 Promise的使用场景?(es6promise用法例子)
-
一、介绍Promise,译为承诺,是异步编程的一种解决方案,比传统的解决方案(回调函数)更加合理和更加强大在以往我们如果处理多层异步操作,我们往往会像下面那样编写我们的代码doSomething(f...
- JavaScript 对 Promise 并发的处理方法
-
Promise对象代表一个未来的值,它有三种状态:pending待定,这是Promise的初始状态,它可能成功,也可能失败,前途未卜fulfilled已完成,这是一种成功的状态,此时可以获取...
- Promise的九大方法(promise的实例方法)
-
1、promise.resolv静态方法Promise.resolve(value)可以认为是newPromise方法的语法糖,比如Promise.resolve(42)可以认为是以下代码的语...
- 360前端一面~面试题解析(360前端开发面试题)
-
1.组件库按需加载怎么做的,具体打包配了什么-按需加载实现:借助打包工具(如Webpack的require.context或ES模块动态导入),在使用组件时才引入对应的代码。例如在V...
- 前端面试-Promise 的 finally 怎么实现的?如何在工作中使用?
-
Promise的finally方法是一个非常有用的工具,它无论Promise是成功(fulfilled)还是失败(rejected)都会执行,且不改变Promise的最终结果。它的实现原...
- 最简单手写Promise,30行代码理解Promise核心原理和发布订阅模式
-
看了全网手写Promise的,大部分对于新手还是比较难理解的,其中几个比较难的点:状态还未改变时通过发布订阅模式去收集事件实例化的时候通过调用构造函数里传出来的方法去修改类里面的状态,这个叫Re...
- 前端分享-Promise可以中途取消啦(promise可以取消吗)
-
传统Promise就像一台需要手动组装的设备,每次使用都要重新接线。而Promise.withResolvers的出现,相当于给开发者发了一个智能遥控器,可以随时随地控制异步操作。它解决了三大...
- 手写 Promise(手写输入法 中文)
-
前言都2020年了,Promise大家肯定都在用了,但是估计很多人对其原理还是一知半解,今天就让我们一起实现一个符合PromiseA+规范的Promise。附PromiseA+规范地址...
- 什么是 Promise.allSettled()!新手老手都要会?
-
Promise.allSettled()方法返回一个在所有给定的promise都已经fulfilled或rejected后的promise,并带有一个对象数组,每个对象表示对应的pr...
- 前端面试-关于Promise解析与高频面试题示范
-
Promise是啥,直接上图:Promise就是处理异步函数的API,它可以包裹一个异步函数,在异步函数完成时抛出完成状态,让代码结束远古时无限回掉的窘境。配合async/await语法糖,可...
- 宇宙厂:为什么前端离不开 Promise.withResolvers() ?
-
大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发。1.为什么需要Promise.with...
- Promise 新增了一个超实用的 API!
-
在JavaScript的世界里,Promise一直是处理异步操作的神器。而现在,随着ES2025的发布,Promise又迎来了一个超实用的新成员——Promise.try()!这个新方法简...
- 一次搞懂 Promise 异步处理(promise 异步顺序执行)
-
PromisePromise就像这个词的表面意识一样,表示一种承诺、许诺,会在后面给出一个结果,成功或者失败。现在已经成为了主流的异步编程的操作方式,写进了标准里面。状态Promise有且仅有...
- Promise 核心机制详解(promise机制的实现原理)
-
一、Promise的核心状态机Promise本质上是一个状态机,其行为由内部状态严格管控。每个Promise实例在创建时处于Pending(等待)状态,此时异步操作尚未完成。当异步操作成功...
- javascript——Promise(js实现promise)
-
1.PromiseES6开始支持,Promise对象用于一个异步操作的最终完成(包括成功和失败)及结果值的表示。简单说就是处理异步请求的。之所以叫Promise,就是我承诺,如果成功则怎么处理,失败怎...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- ES6中 Promise的使用场景?(es6promise用法例子)
- JavaScript 对 Promise 并发的处理方法
- Promise的九大方法(promise的实例方法)
- 360前端一面~面试题解析(360前端开发面试题)
- 前端面试-Promise 的 finally 怎么实现的?如何在工作中使用?
- 最简单手写Promise,30行代码理解Promise核心原理和发布订阅模式
- 前端分享-Promise可以中途取消啦(promise可以取消吗)
- 手写 Promise(手写输入法 中文)
- 什么是 Promise.allSettled()!新手老手都要会?
- 前端面试-关于Promise解析与高频面试题示范
- 标签列表
-
- hive行转列函数 (63)
- sourcemap文件是什么 (54)
- display none 隐藏后怎么显示 (56)
- 共享锁和排他锁的区别 (51)
- httpservletrequest 获取参数 (64)
- jstl包 (64)
- qsharedmemory (50)
- watch computed (53)
- java中switch (68)
- date.now (55)
- git-bash (56)
- 盒子垂直居中 (68)
- npm是什么命令 (62)
- python中+=代表什么 (70)
- fsimage (51)
- nginx break (61)
- mysql分区表的优缺点 (53)
- centos7切换到图形界面 (55)
- 前端深拷贝 (62)
- kmp模式匹配算法 (57)
- jsjson字符串转json对象 (53)
- jdbc connection (61)
- javascript字符串转换为数字 (54)
- mybatis 使用 (73)
- 安装mysql数据库 (55)