node.js - 如何检查 NPM 缓存是否已包含 tarball
问题描述
我正在查看缓存文档: https ://docs.npmjs.com/cli/cache
如果我运行这个:
npm cache add lodash@x.y.z
如果这是在 npm 缓存中,我以后如何检查?
npm cache get lodash@x.y.z
我在文档中没有看到...
解决方案
看起来npm
没有直接的方法来实现这一点,但这个脚本可以解决问题
创建一个文件cache.js
并在下面粘贴代码
const cacache = require('cacache/en')
const cachePath = require('os').homedir()+'/.npm/_cacache'
cacache.ls(cachePath)
.then((packages) => {
for(const i in packages) {
console.log(packages[i].key)
}
})
跑
npm install cacache
然后运行
node cache.js | grep lodash
个人观点:yarn
设计用于缓存npm包,如果你打算这样做,你可以给它一个机会
编辑:我制作了一个执行上述所有操作的脚本,欢迎提供任何反馈
推荐阅读
- javascript - ES6 导入的性能
- python - 任意图像风格化模块 Colab 示例错误
- java - 使用 Netbeans 将 JavaFx 代码部署到 Android 设备
- marklogic - MarkLogic 集群的架构
- python - 我想迭代一个 xlsx,使用 Pandas,包含时间戳并获得停机时间
- javascript - 单击页面上的任何位置时隐藏单击触发的 div 时出现问题,同时仍保持所有内容可选
- encryption - Erlang 为 aes 加密返回空二进制文件
- flutter-web - 如何在运行 Flutter 的 Web 应用程序的本机和本机 Web 视图之间进行通信?
- excel - 根据条件和固定偏移量将粘贴表复制到可变范围
- c# - 如何获取文本框按键事件?