node -v npm -v一旦确认安装成功,我们可以在项目的根目录下执行以下命令初始化npm:
npm init
这将引导我们完成一个交互式的过程,需要提供一些项目的基本信息,如包名称、版本、描述等。完成后,npm会生成一个package.json文件,用于描述项目的元数据和依赖项信息。
npm install package-name --save开发环境依赖项:这些是在开发过程中需要的依赖项,例如测试框架、构建工具等。可以使用--save-dev选项将依赖项保存到devDependencies字段中,示例如下:
npm install package-name --save-dev安装特定版本的包:
npm install package-name@version更新包:
npm update package-name卸载包:
npm uninstall package-name查看已安装的包:
npm ls查看包的详细信息:
npm view package-name
运行以上命令会自动下载所需的模块,并将其保存到项目目录下的node_modules文件夹中。
三. package.json文件通过package.json文件,我们可以管理项目的依赖项。当我们运行npm install命令时,npm会根据package.json中的依赖项列表自动下载和安装所需的模块。此外,package.json文件还可以包含其他自定义的配置属性,例如仓库地址、文档链接等。
注意:在使用npm命令管理依赖项时,可以使用--save和--save-dev选项将依赖项保存到package.json的dependencies和devDependencies中。这样,其他人在克隆或下载项目后,只需运行npm install即可安装所需的依赖项。
package.json文件是Node.js项目的核心配置文件,它定义了项目的基本信息、依赖项和自定义脚本命令。通过合理配置package.json文件,可以实现依赖项的管理和项目的自动化构建。
npm init按照提示填写项目的基本信息,如包名称、版本、描述等。
{ "name": "@yyx219/utils", "version": "1.0.1", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "MIT", "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org/" } }2.编写一个简单的节流防抖功能代码:
// 堆代码 duidaima.com // 节流函数 function throttle(fn, delay) { let timer = null; return function (...args) { if (!timer) { timer = setTimeout(() => { fn.apply(this, args); timer = null; }, delay); } }; } // 防抖函数 function debounce(fn, delay) { let timer = null; return function (...args) { clearTimeout(timer); timer = setTimeout(() => { fn.apply(this, args); }, delay); }; } // 导出函数 module.exports = { throttle, debounce };3.在项目目录下创建README.md文件:
registry.npmjs.org/也可以打开终端或命令提示符,运行以下命令:
npm adduser根据提示输入你的用户名、密码和邮箱地址来注册一个新的npm账号。
npm login输入你的npm账号的用户名、密码和邮箱地址。
npm notice Log in on https://registry.npmjs.org/ Login at: https://www.npmjs.com/login?next=/login/cli/038230dd-0b97-41f6-9e1f-23bcb731dd58 Press ENTER to open in the browser... Logged in on https://registry.npmjs.org/. //去游览器打开输入帐号和密码6.发布包:
npm publish6.2 确保在发布前,你已经完成了包的测试,并且代码是可用的。
npm install @yyx219/utils总结