node.js

前端工程化:开发项目直到上线,过程中集成的所有工具和技术

Node.js是独立执行JavaScript代码的环境

Node.js环境比浏览器环境中的JS少了BOM和DOM

fs模块-读写文件

模块:类型插件,封装了方法/属性

fs模块:封装了与本机文件系统进行交互的方法/属性

语法:

  • 加载fs模块对象
  • 写入文件内容
  • 读取文件内容

CommonJS标准

需求:定义utils.js模块,封装基地址和求数组总和的函数

使用:

  • 导出:module.exports={}
  • 导入:require('模块名或路径')

模块名或路径:

内置模块:直接写名字(例如:fs,path,http)

自定义模块:写模块文件路径(例如:./utils.js)

ECMAScript标准

默认导出和导入

默认标准使用:

  • 导出:export default{}
  • 导入:import 变量名 from '模块名或路径'

让Node.js切换模块标准为ECMAScript:

  • 运行模块所在的文件夹,新建package.json并设置{"type":"module"}

命名导出和导入

命名标准使用:

  • 导入:export 修饰定义语句
  • 导入:import {同名变量} from '模块名或路径'

包的概念

将模块,代码,其他资料聚合成一个文件夹

包的分类

项目包:用户编写项目和业务逻辑

软件包:封装工具和方法进行使用

要求:根目录中,必须有package.json文件(记录包的清单信息)

注意:导入软件包时,引入的默认是index.js模块文件/main属性指定的模块文件

需求:封装数据求和函数的模块,判断用户名和密码长度函数的模块,形成一个软件包

{

"name":"cz_utils", //软件包名称

"version":"1.0.0", //软件包当前版本

"description":"一个数组和字符串常用工具方法的包", //软件包简短描述

"main":"index.js", //软件包入口点

"author":"itherma", //软件包作者

"license":"MIT" //软件包许可证

}

npm

软件包管理器

npm是Node.js标准的软件包管理器,下载软件包以及管理版本

使用:

  • 初始化清单文件:npm init-y(得到package.json文件,有则略过此命令)
  • 下载软件包:npm i 软件包名称
  • 使用软件包

安装所有依赖

当前项目下,执行npm i安装所有依赖软件包

为什么用node_modules不进行传递:因为用npm下载比磁盘传递的快

全局软件包nodemon

软件包的区别
  • 本地软件包:当前项目内使用,封装属性和方法,存在于node_modules
  • 全局软件包:本机所有项目使用,封装命令和工具,存在于系统设置的位置
nodemon作用

替代node命令,检测代码更改,自动重启程序

使用
  • 安装:npm i nodemon -g(-g代表按照到全局环境中)
  • 运行:nodemon待执行的目标js文件
需求

启动准备好的项目,修改代码保存后,观察自动重启应用程序

相关推荐
H5css�海秀3 小时前
今天是自学大模型的第一天(sanjose)
后端·python·node.js·php
求知若饥11 小时前
webpage-channel 让不同页面通信像组件通信一样简便
前端·typescript·node.js
小霍同学12 小时前
NVM —— Node.js 版本管理工具
node.js
嵌入式-老费12 小时前
vivado hls的应用(axis接口)
前端·webpack·node.js
无巧不成书021814 小时前
Node.js全平台安装教程
windows·node.js·node.js安装·npm国内镜像配置·nvm管理node.js版本·macos m1安装
zhenxin012217 小时前
2024最新版Node.js下载安装及环境配置教程【保姆级】
node.js
Hommy8818 小时前
【开源剪映小助手-客户端】Node.js 集成
开源·node.js
竹林8181 天前
在Web3前端用Node.js子进程批量校验钱包,我踩了这些性能与安全的坑
javascript·node.js
oyzz1202 天前
Windows 上彻底卸载 Node.js
windows·node.js
小霍同学2 天前
Node.js 起步指南
node.js