最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

npm模块

运维笔记admin11浏览0评论

npm模块

npm模块

假设我已经在npm上发布了一个nodejs模块。这很简单,你安装并导入它,给定一个字符串和一个配置对象,它返回一个字符串。

现在,我想让它既可以作为本地模块也可以作为全局模块使用:我在package.json中添加了一个用于bin的脚本。该脚本导入并使用本地函数并打印结果。为了处理参数和配置对象,我使用npm yarg作为依赖项。

问题是这样的:如果我想将我的模块安装为本地模块,则不需要yarg依赖项,因为仅当模块用作全局模块时才使用它。所以这是浪费空间。

有没有办法只在我的模块安装为全局模块而不是本地模块时才能安装yarg依赖项?

回答如下:

这绝不是一种常见的做法。可能存在本地安装的软件包可用作CLI可执行文件的情况,特别是作为NPM脚本的一部分。所有应该在全球范围内使用的流行软件包如npmgrunt也可以在本地安装和运行。

没有可靠的方法可以检测到全局安装了软件包。这可以通过检测模块位于node_modules全球位置来完成。可能存在一些取决于特定系统的警告。

yargs的足迹是760 Kb,这并不重要。如果CLI特定功能的占用空间很大,则可以提取CLI可执行文件以分离依赖于原始包的包。

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论