定义
在Node.js中, 每个文件都被视为一个单独的模块, 方便项目的管理
CommonJS模块是Node.js打包JS代码的原始方式, 一般用于Node.js项目中
Node.js还支持浏览器和其他JS运行时使用的ECMAScript模块标准, 一般用在前端项目中
说明
语法
体验
- /**
- * 目标:基于 CommonJS 标准语法,封装属性和方法并导出
- */
- const baseURL = 'http://hmajax.itheima.net'
- const getArraySum = arr => arr.reduce((sum, item) => sum += item, 0)
-
- // 导出
- module.exports = {
- baseURL,
- getArraySum
- }
- /**
- * 目标:基于 CommonJS 标准语法,导入工具属性和方法使用
- */
- // 导入
- const utils = require('./utils')
-
- // 使用变量
- console.log(utils.baseURL);
-
- // 使用方法
- const arr = [1, 2, 3, 4, 5]
- const sum = utils.getArraySum(arr)
- console.log(sum);
默认导出
体验
- /**
- * 目标:基于 ECMAScript 标准语法,封装属性和方法并"默认"导出
- */
- const baseURL = 'http://hmajax.itheima.net'
- const getArraySum = arr => arr.reduce((sum, item) => sum += item, 0)
-
- // 默认导出
- export default {
- baseURL,
- getArraySum
- }
- /**
- * 目标:基于 ECMAScript 标准语法,"默认"导入,工具属性和方法使用
- */
- // 默认导入
- import utils from './utils.js'
-
- // 使用变量
- console.log(utils.baseURL);
-
- // 使用方法
- const sum = utils.getArraySum([1, 2, 3, 4, 5])
- console.log(sum);
按需导出
体验
- /**
- * 目标:基于 ECMAScript 标准语法,封装属性和方法并"命名"导出
- */
- export const baseURL = 'http://hmajax.itheima.net'
- export const getArraySum = arr => arr.reduce((sum, item) => sum += item, 0)
- /**
- * 目标:基于 ECMAScript 标准语法,"命名"导入,工具属性和方法使用
- */
- // 命名导入
- import { baseURL, getArraySum } from './utils.js'
-
- // 使用变量
- console.log(baseURL)
-
- // 使用方法
- const result = getArraySum([10, 21, 33])
- console.log(result)
立即执行
体验
- import '@/utils/auth.js'
- import './index.css'
将模块, 代码, 其他资料聚合在一个文件夹中, 形成了包
分类
说明
包管理器的作用就是下载和管理Node.js依赖包的. npm是Node.js标准的软件包管理器
使用
过程
安装全部依赖
传递项目的过程中, 不会携带node_modules文件夹, 拿到项目后, 使用 npm i 命令下载全部依赖软件包即可
因为 package.json文件中记录了项目中所需的依赖包及其版本信息
本地软件包: 当前项目中使用, 封装了属性和方法, 存在于node_modules中
全局软件包: 本机所有项目使用, 封装了命令和工具, 存放于系统设置的位置
nodemon
替代node命令, 可以检测代码更改, 自动重启程序
使用