【问题标题】:How to get dependecies from package.json for creating logical tree of the project?如何从 package.json 获取依赖项以创建项目的逻辑树?
【发布时间】:2018-08-31 12:46:36
【问题描述】:

这个问题的目标。我们有很多不同的项目,分析每个项目的依赖关系往往是困难而漫长的。 因此,当开发人员或团队为他们获得一个新项目时 - 他们会研究很长时间,并调查依赖关系等。 我想提出一个解决方案:使用类似 npm ls 命令的东西。

一般来说,这个命令会构建项目的依赖树, 我们的目标是为 npm ls 类型提供一个解决方案,但它应该是: - 能够使用用户输入的正则表达式过滤依赖关系 例如,我想得到类似enter image description here 的结果 我想输入类似 {path to the project} {expression for packet filtering} 我想使用代码 npmls 创建检查 package.json 中所有依赖项的函数,并因此打印依赖项的对象。

【问题讨论】:

  • 您的问题非常不清楚。你需要更好地解释你想做什么。
  • 我需要实现类似 npm-ls 的功能,这必须是一个脚本......它可以帮助我选择我需要的依赖项。当我启动 npm -ls 时,这个命令会创建很多依赖项。我需要得到类似于 package-tree ./(1)package.json -o ../(2)report.html ↑ 模拟 «npm ls» 的结果,其中 1 - 是我需要的,2 放在哪里依赖关系

标签: javascript json node-modules


【解决方案1】:

使用 typescript 命令 npm-ls 实现或如何以最低成本从 npm 中提取此 ls 函数?

您可以使用 child_process.spawnSync(command[, args][, options]) : https://nodejs.org/api/child_process.html#child_process_child_process_spawnsync_command_args_options

const child_process = require('child_process');
const output = child_process.spawnSync('npm', ['ls']);

更多

  • 为此使用@types/node
  • 更喜欢原始的spawn。这只是spawnSync 的一个简单示例。

【讨论】:

    猜你喜欢
    • 2012-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-04
    • 2019-01-20
    • 1970-01-01
    • 2021-11-30
    • 1970-01-01
    相关资源
    最近更新 更多