nodej环境配置
下载
在 Node官网 上,下载对应的安装包
| 官网 | 地址 |
|---|---|
| nodejs | Node.js官网下载地址 |
点击安装文件,开始安装 node.js
创建文件夹"D:\node"
安装地址选择"D:\node"中
Node.js环境变量配置
在上面已经完成了 node.js 的安装
但是,若不进行环境变量配置,那么在使用命令安装 node.js全局模块 (如:npm install -g vue)时,会默认安装到C盘的路径 (C:\Users\zs\AppData\Roaming\npm) 中
需要配置 全局安装模块 node_global 以及 缓存目录 node_cache 的环境变量;
AppData文件夹一般是隐藏的,如要在查看查看
在node.js的安装目录中,新建两个文件夹 node_global 和 node_cache,分别用来存放安装的全局模块和全局缓存信息
创建完两个文件夹后,在cmd窗口中输入以下命令(两个路径即是两个文件夹的路径):
设置全局模块安装路径
npm config set prefix "D:\node\node_global"
设置全局缓存存放路径
npm config set cache "D:\node\node_cache"
命令执行,效果如图:
设置电脑环境变量,环境变量界面打开顺序:右键 “我的电脑”=》属性=》高级系统设置=》环境变量 ,具体实行过程
进入环境变量对话框,在【系统变量】中新建环境变量 NODE_PATH,值为
D:\node\node_global\node_modules
其中 D:\node\node_global 是新创建的全局模块安装路径
修改【用户变量】中的 path 变量,将
C:\Users\zs\AppData\Roaming\npm
修改为
D:\node\node_global
点击确定后,配置完成。
查看node和npm版本:
node -v
npm -v
查看当前的镜像源
npm config get registry
国内镜像网站配置
使用淘宝镜像源加速 NPM
npm config set registry https://registry.npmmirror.com
使用阿里云 镜像源加速 NPM
npm config set registry https://npm.aliyun.com
使用腾讯云镜像源加速 NPM
npm config set registry http://mirrors.cloud.tencent.com/npm/
使用华为云 镜像源加速 NPM
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
返回npm 官方原始镜像
npm config set registry https://registry.npmjs.org/
使用nvm切换工具
nvm 是一个node的版本管理工具
nvm ls ## 查看已安装的所有node版本
nvm install node ## 安装最新版本
nvm install version ## 安装指定版本
nvm use version ## 使用指定版本
nvm current ## 查看当前版本
使用 npm 全局安装 nrm
npm install nrm -g
通过 nrm ls 命令,查看npm的仓库列表,带 * 的就是当前选中的镜像仓库:
nrm ls
通过 nrm use taobao 来指定要使用的镜像源:
nrm use taobao
最后,通过 nrm test npm 来测试速度:
nrm test npm
升级npm
当只需要简单的升级 npm 的时候,可以比较方便的处理。
npm升级到最新版本
npm install npm -g
npm install npm@10.5 -g
查看全局的软件包
不知道安装到了什么位置,可以使用命令 npm root -g 进行查询
npm root -g
清除npm缓存:
npm cache clean -f
模块系统
export
export 关键字允许你从模块中导出多个成员(变量、函数、类等),并为每个成员指定一个名称。其他模块可以通过名称来导入这些成员。这种导出方式被称为命名导出(named export)。
导出变量或常量:
// myModule.js
export const myVariable = 'Hello, World!';
export let myLetVariable = 42;
// mathUtils.js
export function add(a, b) {
return a + b;
}
导出类:
// Person.js
export class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
}
导入
需要使用花括号({})来指定要导入的成员名称:
// main.js
import { myVariable, add } from './myModule.js';
import { Person } from './Person.js';
console.log(myVariable); // 输出 'Hello, World!'
console.log(add(2, 3)); // 输出 5
const person = new Person('Alice', 30);
export default
export default
允许你导出一个模块的默认成员。每个模块只能有一个默认导出。导入默认导出时,不需要使用花括号,而是直接使用 import 关键字和模块名称。
导出函数作为默认成员:
// myFunction.js
export default function() {
console.log('This is the default export!');
}
导出类作为默认成员:
// MyClass.js
export default class MyClass {
constructor() {
// ...
}
}
导入
在导入时,可以直接使用模块名称作为变量名,或者为默认导出指定一个名称:
// main.js
import myFunction from './myFunction.js';
import MyClass from './MyClass.js';
myFunction(); // 输出 'This is the default export!'
const instance = new MyClass();
module.exports
module.exports
module.exports 是 CommonJS 模块系统(主要在 Node.js 中使用)的一部分,用于导出整个模块的内容或一个特定的对象或函数。在 CommonJS 中,每个文件都被视为一个模块,并且 module 对象代表当前模块。exports 对象实际上是 module.exports 的一个引用,但通常直接使用 module.exports 来导出内容。
导出单个对象或函数:
// myModule.js
function myFunction() {
// ...
}
module.exports = myFunction;
导出多个属性组成的对象:
// myModule.js
const myVariable = 'Hello';
function myFunction() {
// ...
}
module.exports = {
myVariable,
myFunction
};
导入
在导入时,使用 require 函数:
// main.js
const myFunction = require('./myModule.js');
const { myVariable, myFunction } = require('./myModule.js');
myFunction();
console.log(myVariable);
总结
- export 和 export default 是 ES6 模块系统的一部分,用于浏览器和现代 Node.js 环境的模块导出。它们提供了命名导出和默认导出的方式,使得模块成员可以按需导入。
- module.exports 是 CommonJS 模块系统的一部分,主要在早期的 Node.js 中使用。它允许你导出整个模块的内容或一个特定的对象或函数。
- 在现代的 JavaScript 开发中,尤其是在前端开发中,推荐使用 ES6 模块系统。然而,在 Node.js 中,由于历史原因和生态系统的支持,CommonJS 仍然被广泛使用
在线接口
https://jsonplaceholder.typicode.com/todos