Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境。它允许开发者使用 JavaScript 编写服务器端代码。Node.js 的模块系统允许开发者通过 require
或 import
语句来引入外部模块。
当你在 Node.js 10 中使用 require('...')
从 node_modules
引入模块时,速度非常慢。
node_modules
目录,查找对应的模块文件。如果 node_modules
目录结构复杂或模块数量庞大,这个过程会变得非常耗时。npm ci
替代 npm install
npm ci
命令会严格根据 package-lock.json
文件来安装依赖,而不是根据 package.json
文件。这样可以确保依赖的一致性和安装速度。
npm ci
yarn
Yarn 是一个快速、可靠、安全的依赖管理工具。它通过缓存机制和并行安装来提高安装速度。
yarn install
node_modules
结构确保 node_modules
目录结构清晰,避免不必要的嵌套和冗余模块。可以通过以下命令来清理和优化:
npm dedupe
require.resolve
预解析模块路径在应用启动时,可以使用 require.resolve
预解析常用模块的路径,减少运行时的解析时间。
const path = require('path');
const modulePath = require.resolve('some-module');
--preserve-symlinks
选项在 Node.js 中使用 --preserve-symlinks
选项可以避免对符号链接的重复解析,从而提高模块加载速度。
node --preserve-symlinks index.js
通过以上方法,可以有效提高 Node.js 中从 node_modules
引入模块的速度。
领取专属 10元无门槛券
手把手带您无忧上云