下载安装
https://nodejs.org/en/download/
选择Windows Installer(.msi)
按照步骤安装完毕后,配置环境变量:将 @nodejs安装目录路径 填到path变量。
配置完毕后,打开cmd命令行,判断是否安装成功
node --version
配置全局模块安装路径和缓存路径
查看当前配置信息
npm config list
配置路径
npm config set prefix “D:\test\node_global”
npm config set cache “D:\test\node_cache”
将全局模块安装路径配置到path环境变量,方便命令行运行使用。
全局模块安装,都是安装到此配置好的路径下
npm install -g xxx
npm install --global xxx
全局模块安装路径 不能配置为nodejs的安装目录 否则会把安装目录下的node_modules 文件夹清空,删除nodejs运行关键模块,导致nodejs运行不正常。
配置镜像站
查看当前npm源
npm config get registry
设置阿里npm镜像源,默认源为:https://registry.npmjs.org/
npm config set registry=http://registry.npm.taobao.org
package.json
package.json 文件是项目的清单。 它可以做很多完全互不相关的事情。 例如,它是用于工具的配置中心。
它也是
n
p
m
和
y
a
r
n
存储所有已安装软件包的名称和版本的地方
\color{red}它也是 npm 和 yarn 存储所有已安装软件包的名称和版本的地方
它也是npm和yarn存储所有已安装软件包的名称和版本的地方。在nodejs项目中作用也是如此。
当通过package.json来管理依赖项时,把nodejs项目提交到git的时,无需将node_modules 文件夹(通常很大)提交,只需要提交package.json,当在其他地方初始化项目(npm install)时,会根据package.json自动配置node_modules。
在版本 5 中,
n
p
m
引入了
p
a
c
k
a
g
e
−
l
o
c
k
.
j
s
o
n
文件
\color{red}npm 引入了 package-lock.json 文件
npm引入了package−lock.json文件。该文件旨在跟踪被安装的每个软件包的确切版本,以便产品可以以相同的方式被 100% 复制(即使软件包的维护者更新了软件包)。这解决了 package.json 一直尚未解决的特殊问题。 在 package.json 中,可以使用 semver 表示法设置要升级到的版本(补丁版本或次版本),例如:
- 如果写入的是 〜0.13.0,则只更新补丁版本:即 0.13.1 可以,但 0.14.0 不可以。
- 如果写入的是 ^0.13.0,则要更新补丁版本和次版本:即 0.13.1、0.14.0、依此类推。
- 如果写入的是 0.13.0,则始终使用确切的版本。
package-lock.json 会固化当前安装的每个软件包的版本,当运行 npm install时,npm 会使用这些确切的版本。package-lock.json 文件需要被提交到 Git 仓库,以便被其他人获取(如果项目是公开的或有合作者,或者将 Git 作为部署源)。
当运行 npm update 时,package-lock.json 文件中的依赖的版本会被更新。
基本属性解析:
version 表明了当前的版本。
name 设置了应用程序/软件包的名称。
description 是应用程序/软件包的简短描述。
main 设置了应用程序的入口点。
private 如果设置为 true,则可以防止应用程序/软件包被意外地发布到 npm。
scripts 定义了一组可以运行的 node 脚本。
dependencies 设置了作为依赖安装的 npm 软件包的列表。
devDependencies 设置了作为开发依赖安装的 npm 软件包的列表。
engines 设置了此软件包/应用程序在哪个版本的 Node.js 上运行。
browserslist 用于告知要支持哪些浏览器(及其版本)。
在nodejs项目文件夹下,创建package.json管理依赖包
npm init 需要创建者一步步确认选项的值
npm init --yes 会直接创建出一个空的package.json文件
在nodejs项目文件夹下,安装模块,就会自动将依赖项信息存储到package.json文件的对应选项中
npm install xxx --save 会保存到dependencies选项中
npm install xxx --save-dev 会保存到devDependencies选项中
VSCode配置nodejs开发环境
配置调试信息
点击 Run and Debug,选择nodej运行环境
上述步骤,即可运行当前打开的js文件。
当存在大量js文件时,可配置launch.json文件,作为一个项目来调试。
生成的launch.json默认内容如下:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
“version”: “0.2.0”,
“configurations”: [
{
“type”: “pwa-node”,
“request”: “launch”,
“name”: “Launch Program”,
“skipFiles”: [
“<node_internals>/**”
],
“program”: “${file}”
}
]
}
“program”: "${file}"表示从当前打开的文件启动调试。
"program"选项可改为从某个特定文件启动调试: “${workspaceFolder}\test.js”。
模块安装特别说明
typings
代码编写智能提示模块。
全局安装在vscode中不起作用,需要安装在对应的项目文件夹下。
npm install --save-dev @types/node
archiver
一个归档模块。
全局安装在vscode中不起作用,提示无法找到模块,原因是vscode会自动去微软的依赖包里面找,找的位置不对,nodejs就无法引用。
需要安装在对应的项目文件夹下,就可以解决无法找到模块问题
Uncaught Error: Cannot find module ‘archiver’
升级node版本
升级方法:
1.产看node版本,没安装的请先安装;
$ node -v
2.清除node缓存;
$ sudo npm cache clean -f
3.安装node版本管理工具’n’;
$ sudo npm install n -g
4.使用版本管理工具安装指定node或者升级到最新node版本;
$ sudo n stable (安装node最新版本)
或安装指定版本
$ sudo n (可以安装node指定版本 sudo n 10.10.0)
5.使用node -v查看node版本,如果版本号改变为你想要的则升级成功。
npm报错问题解决
1.当以root用户权限,使用npm安装第三方包时,报错:npm ERR! Error: EACCES: permission denied
参考:优快云
原因:官方
npm 出于安全考虑不支持以 root 用户运行,即使你用 root 用户身份运行了,npm 会自动转成一个叫 nobody 的用户来运行,而这个用户几乎没有任何权限。这样的话如果脚本里有一些需要权限的操作,比如写文件(尤其是写/root/.node-gyp),就会崩掉。
为了避免这种情况,要么按照 npm 的规矩来,专门建一个用于运行 npm 的高权限用户;要么加 --unsafe-perm 参数,这样就不会切换到 nobody 上,运行时是哪个用户就是哪个用户,即使是 root。
解决:
npm install --unsafe-perm @ceisum -g
使用nvm管理node版本
nvm安装与配置
1、下载安装
nvm for windows
:https://github.com/coreybutler/nvm-windows/releases
2、配置
(1)@NVM 的安装目录/settings.txt
:
#设置镜像源
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/
(2)检查nvm自动添加环境变量:NVM_HOME
和NVM_SYMLINK
(3)设置npm的全局目录
和缓存
:
npm config set prefix “D:\soft\nvm\node_global”
npm config set cache “D:\soft\nvm\node_cache”
(4)将全局目录设置到path环境变量:%NVM_HOME%\node_global
(5)新建全局环境变量:NODE_PATH=%NVM_HOME%\node_global\node_modules
nvm常用命令
- nvm list available
查看所有可下载的Node版本
如果需要下载早期版本,比如node16,先检索nvm支持的对应版本:
#在index.json中查找对应的版本:16.20.2
https://cdn.npmmirror.com/binaries/node/index.json
- nvm install 20.10.0
安装具体版本
- nvm uninstall 20.10.0
卸载某版本
- nvm use 18.20.0
设置当前使用的版本
使用nrm管理node版本
nrm 的使用 可以快速切换下载镜像
- 介绍 nrm(npm registry manager) 是 npm 的镜像源管理工具. 有时候国外资源太慢,使用 nrm 可以快速的在 npm 源之间切换
- 安装 npm install -g nrm
- 基本使用
查看可选择的源 nrm ls
切换到对应的镜像源 nrm use 对应的镜像
删除镜像源 nrm del 名字
增加镜像源 nrm add registry http://registry.npm.frp/trmap.cn/
测试镜像源速度 nrm test npm
使用yarn管理依赖包
安装
npm install -g yarn
安装成功后,查看版本号:yarn --version
修改yarn的下载镜像源
yarn config set registry https://registry.npm.taobao.org -g
yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g
配置文件(@windows用户目录/.yarnrc
)
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
registry "https://registry.npm.taobao.org"
lastUpdateCheck 1735872088947
sass_binary_site "http://cdn.npm.taobao.org/dist/node-sass"
常用命令
#查看当前配置
yarn config list
#安装依赖
yarn install
#开发模式运行
yarn run serve
#编译项目
yarn run build